问题
tibble
(previously tbl_df
) is a version of a data frame created by the dplyr
data frame manipulation package in R. It prevents long table outputs when accidentally calling the data frame.
Once a data frame has been wrapped by tibble
/tbl_df
, is there a command to view the whole data frame though (all the rows and columns of the data frame)?
If I use df[1:100,]
, I will see all 100 rows, but if I use df[1:101,]
, it will only display the first 10 rows. I would like to easily display all the rows to quickly scroll through them.
Is there either a dplyr command to counteract this or a way to unwrap the data frame?
回答1:
You could also use
print(tbl_df(df), n=40)
or with the help of the pipe operator
df %>% tbl_df %>% print(n=40)
To print all rows specify tbl_df %>% print(n = Inf)
回答2:
You can use as.data.frame
or print.data.frame
.
If you want this to be the default, you can change the value of the dplyr.print_max
option.
options(dplyr.print_max = 1e9)
回答3:
The tibble vignette has an updated way to change its default printing behavior:
You can control the default appearance with options:
options(tibble.print_max = n, tibble.print_min = m)
: if there are more than n rows, print only the first m rows. Useoptions(tibble.print_max = Inf)
to always show all rows.
options(tibble.width = Inf)
will always print all columns, regardless of the width of the screen.
examples
This will always print all rows:
options(tibble.print_max = Inf)
This will not actually limit the printing to 50 lines:
options(tibble.print_max = 50)
But this will restrict printing to 50 lines:
options(tibble.print_max = 50, tibble.print_min = 50)
回答4:
As detailed out in the bookdown documentation, you could also use a paged table
mtcars %>% tbl_df %>% rmarkdown::paged_table()
This will paginate the data and allows to browse all rows and columns (unless configured to cap the rows). Example:
来源:https://stackoverflow.com/questions/23188900/display-print-all-rows-of-a-tibble-tbl-df