小标题中的列是否有像 tail 这样的功能?
Is there a function like tail for columns in tibbles?
我有一个超过 20 列的小标题,所以当我在控制台中查看它时,只会显示 20 列,即使我最大化 window.
对于只显示最后 n 列的列,是否有像 tail() 这样的函数?
我相信你正在寻找整洁的 select 助手 last_col()
它本身带来了最后一列但是根据 dplyr 网站 https://tidyselect.r-lib.org/reference/everything.html 你也可以在其中有一个偏移量来计算从最后一列向后。
这与select()
一起使用
#returns second to last column
mtcars%>% select(last_col(1))
#pulls in last col and second to last col
## interesting that it is base 0
mtcars%>% select(last_col(0:1))
您可以调整 print()
的参数以获得 tibble 以控制打印到控制台的数量。因此,例如,您可以通过在打印中设置 n
来控制行数,并使用 width
来控制列数。如果您要将 width
设置为 Inf
,那么它将打印所有列。
print(mtcars_tibble, n = 15, width = Inf)
输出
# A tibble: 32 × 22
mpg...1 cyl...2 disp...3 hp...4 drat...5 wt...6 qsec...7 vs...8 am...9 gear...10 carb...11 mpg...12 cyl...13
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 21 6 160 110 3.9 2.62 16.5 0 1 4 4 21 6
2 21 6 160 110 3.9 2.88 17.0 0 1 4 4 21 6
3 22.8 4 108 93 3.85 2.32 18.6 1 1 4 1 22.8 4
4 21.4 6 258 110 3.08 3.22 19.4 1 0 3 1 21.4 6
5 18.7 8 360 175 3.15 3.44 17.0 0 0 3 2 18.7 8
disp...14 hp...15 drat...16 wt...17 qsec...18 vs...19 am...20 gear...21 carb...22
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 160 110 3.9 2.62 16.5 0 1 4 4
2 160 110 3.9 2.88 17.0 0 1 4 4
3 108 93 3.85 2.32 18.6 1 1 4 1
4 258 110 3.08 3.22 19.4 1 0 3 1
5 360 175 3.15 3.44 17.0 0 0 3 2
# … with 27 more rows
但是,您仍然可以使用普通的基本 R 符号对其进行子集化以获得最后 n 列。
n <- 10
print(mtcars_tibble, n = 5, width = Inf)[,(ncol(mtcars_tibble)-n+1):ncol(mtcars_tibble)]
输出
# A tibble: 32 × 10
cyl...13 disp...14 hp...15 drat...16 wt...17 qsec...18 vs...19 am...20 gear...21 carb...22
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 6 160 110 3.9 2.62 16.5 0 1 4 4
2 6 160 110 3.9 2.88 17.0 0 1 4 4
3 4 108 93 3.85 2.32 18.6 1 1 4 1
4 6 258 110 3.08 3.22 19.4 1 0 3 1
5 8 360 175 3.15 3.44 17.0 0 0 3 2
6 6 225 105 2.76 3.46 20.2 1 0 3 1
7 8 360 245 3.21 3.57 15.8 0 0 3 4
8 4 147. 62 3.69 3.19 20 1 0 4 2
9 4 141. 95 3.92 3.15 22.9 1 0 4 2
10 6 168. 123 3.92 3.44 18.3 1 0 4 4
# … with 22 more rows
为了简化,我们可以创建自己的打印函数来确定行数和最后一列。
print_tibble <- function(x, y, z) {
print(x, n = y, width = Inf)[,(ncol(x)-z+1):ncol(x)]
}
print_tibble(mtcars_tibble, 5, 10)
我有一个超过 20 列的小标题,所以当我在控制台中查看它时,只会显示 20 列,即使我最大化 window.
对于只显示最后 n 列的列,是否有像 tail() 这样的函数?
我相信你正在寻找整洁的 select 助手 last_col()
它本身带来了最后一列但是根据 dplyr 网站 https://tidyselect.r-lib.org/reference/everything.html 你也可以在其中有一个偏移量来计算从最后一列向后。
这与select()
#returns second to last column
mtcars%>% select(last_col(1))
#pulls in last col and second to last col
## interesting that it is base 0
mtcars%>% select(last_col(0:1))
您可以调整 print()
的参数以获得 tibble 以控制打印到控制台的数量。因此,例如,您可以通过在打印中设置 n
来控制行数,并使用 width
来控制列数。如果您要将 width
设置为 Inf
,那么它将打印所有列。
print(mtcars_tibble, n = 15, width = Inf)
输出
# A tibble: 32 × 22
mpg...1 cyl...2 disp...3 hp...4 drat...5 wt...6 qsec...7 vs...8 am...9 gear...10 carb...11 mpg...12 cyl...13
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 21 6 160 110 3.9 2.62 16.5 0 1 4 4 21 6
2 21 6 160 110 3.9 2.88 17.0 0 1 4 4 21 6
3 22.8 4 108 93 3.85 2.32 18.6 1 1 4 1 22.8 4
4 21.4 6 258 110 3.08 3.22 19.4 1 0 3 1 21.4 6
5 18.7 8 360 175 3.15 3.44 17.0 0 0 3 2 18.7 8
disp...14 hp...15 drat...16 wt...17 qsec...18 vs...19 am...20 gear...21 carb...22
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 160 110 3.9 2.62 16.5 0 1 4 4
2 160 110 3.9 2.88 17.0 0 1 4 4
3 108 93 3.85 2.32 18.6 1 1 4 1
4 258 110 3.08 3.22 19.4 1 0 3 1
5 360 175 3.15 3.44 17.0 0 0 3 2
# … with 27 more rows
但是,您仍然可以使用普通的基本 R 符号对其进行子集化以获得最后 n 列。
n <- 10
print(mtcars_tibble, n = 5, width = Inf)[,(ncol(mtcars_tibble)-n+1):ncol(mtcars_tibble)]
输出
# A tibble: 32 × 10
cyl...13 disp...14 hp...15 drat...16 wt...17 qsec...18 vs...19 am...20 gear...21 carb...22
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 6 160 110 3.9 2.62 16.5 0 1 4 4
2 6 160 110 3.9 2.88 17.0 0 1 4 4
3 4 108 93 3.85 2.32 18.6 1 1 4 1
4 6 258 110 3.08 3.22 19.4 1 0 3 1
5 8 360 175 3.15 3.44 17.0 0 0 3 2
6 6 225 105 2.76 3.46 20.2 1 0 3 1
7 8 360 245 3.21 3.57 15.8 0 0 3 4
8 4 147. 62 3.69 3.19 20 1 0 4 2
9 4 141. 95 3.92 3.15 22.9 1 0 4 2
10 6 168. 123 3.92 3.44 18.3 1 0 4 4
# … with 22 more rows
为了简化,我们可以创建自己的打印函数来确定行数和最后一列。
print_tibble <- function(x, y, z) {
print(x, n = y, width = Inf)[,(ncol(x)-z+1):ncol(x)]
}
print_tibble(mtcars_tibble, 5, 10)