是否可以更改 data.table 中的設定,以便默認只列印 10 行并且只列印適合螢屏的列?就像 tibble df 一樣。
我通常在筆記本電腦上作業,并希望避免下面示例中的輸出。非常感謝!
library(data.table)
dt_table <- as.data.table(mtcars)
dt_table
輸出:
dt_table
mpg cyl disp hp drat wt qsec vs am gear
1: 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4
2: 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4
3: 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4
4: 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3
5: 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3
6: 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3
7: 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3
8: 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4
9: 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4
10: 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4
11: 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4
12: 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3
13: 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3
14: 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3
15: 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3
16: 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3
17: 14.7 8 440.0 230 3.23 5.345 17.42 0 0 3
18: 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4
19: 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4
20: 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4
21: 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3
22: 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3
23: 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3
24: 13.3 8 350.0 245 3.73 3.840 15.41 0 0 3
25: 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3
26: 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4
27: 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5
28: 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5
29: 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5
30: 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5
31: 15.0 8 301.0 335 3.54 3.570 14.60 0 1 5
32: 21.4 4 121.0 109 4.11 2.780 18.60 1 1 4
編輯:
我找到了部分解決方案:
options(datatable.print.nrows=5,
datatable.print.trunc.cols = T)
這對我有用。我有誰知道如何分別控制多少 n 頂/底行?上面的選項將列印 5 個頂部 / 5 個底部行——如果我想要前 10 行,底部 2 行怎么辦?那可能嗎?
uj5u.com熱心網友回復:
我們可能會使用tidytable
tidytable::as_tidytable(dt_table)
-輸出
# A tidytable: 32 × 11
mpg cyl disp hp drat wt qsec vs am gear carb
<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
2 21 6 160 110 3.9 2.88 17.0 0 1 4 4
3 22.8 4 108 93 3.85 2.32 18.6 1 1 4 1
4 21.4 6 258 110 3.08 3.22 19.4 1 0 3 1
5 18.7 8 360 175 3.15 3.44 17.0 0 0 3 2
6 18.1 6 225 105 2.76 3.46 20.2 1 0 3 1
7 14.3 8 360 245 3.21 3.57 15.8 0 0 3 4
8 24.4 4 147. 62 3.69 3.19 20 1 0 4 2
9 22.8 4 141. 95 3.92 3.15 22.9 1 0 4 2
10 19.2 6 168. 123 3.92 3.44 18.3 1 0 4 4
# … with 22 more rows
這也將保留data.table課程
> str(tidytable::as_tidytable(dt_table) )
Classes ‘tidytable’, ‘data.table’ and 'data.frame': 32 obs. of 11 variables:
$ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
$ cyl : num 6 6 4 6 8 6 8 4 4 6 ...
$ disp: num 160 160 108 258 360 ...
$ hp : num 110 110 93 110 175 105 245 62 95 123 ...
$ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
$ wt : num 2.62 2.88 2.32 3.21 3.44 ...
$ qsec: num 16.5 17 18.6 19.4 17 ...
$ vs : num 0 0 1 1 0 1 0 1 1 1 ...
$ am : num 1 1 1 0 0 0 0 0 0 0 ...
$ gear: num 4 4 4 3 3 3 3 4 4 4 ...
$ carb: num 4 4 1 1 2 1 4 2 2 4 ...
- attr(*, ".internal.selfref")=<externalptr>
uj5u.com熱心網友回復:
從...開始:
> nycflights13::flights
# A tibble: 336,776 x 19
year month day dep_time sched_dep_time dep_delay arr_time sched_arr_time arr_delay
<int> <int> <int> <int> <int> <dbl> <int> <int> <dbl>
1 2013 1 1 517 515 2 830 819 11
2 2013 1 1 533 529 4 850 830 20
3 2013 1 1 542 540 2 923 850 33
4 2013 1 1 544 545 -1 1004 1022 -18
5 2013 1 1 554 600 -6 812 837 -25
6 2013 1 1 554 558 -4 740 728 12
7 2013 1 1 555 600 -5 913 854 19
8 2013 1 1 557 600 -3 709 723 -14
9 2013 1 1 557 600 -3 838 846 -8
10 2013 1 1 558 600 -2 753 745 8
# ... with 336,766 more rows, and 10 more variables: carrier <chr>, flight <int>,
# tailnum <chr>, origin <chr>, dest <chr>, air_time <dbl>, distance <dbl>, hour <dbl>,
# minute <dbl>, time_hour <dttm>
> as.data.table(nycflights13::flights)
year month day dep_time sched_dep_time dep_delay arr_time sched_arr_time
1: 2013 1 1 517 515 2 830 819
2: 2013 1 1 533 529 4 850 830
3: 2013 1 1 542 540 2 923 850
4: 2013 1 1 544 545 -1 1004 1022
5: 2013 1 1 554 600 -6 812 837
---
336772: 2013 9 30 NA 1455 NA NA 1634
336773: 2013 9 30 NA 2200 NA NA 2312
336774: 2013 9 30 NA 1210 NA NA 1330
336775: 2013 9 30 NA 1159 NA NA 1344
336776: 2013 9 30 NA 840 NA NA 1020
arr_delay carrier flight tailnum origin dest air_time distance hour minute
1: 11 UA 1545 N14228 EWR IAH 227 1400 5 15
2: 20 UA 1714 N24211 LGA IAH 227 1416 5 29
3: 33 AA 1141 N619AA JFK MIA 160 1089 5 40
4: -18 B6 725 N804JB JFK BQN 183 1576 5 45
5: -25 DL 461 N668DN LGA ATL 116 762 6 0
---
336772: NA 9E 3393 <NA> JFK DCA NA 213 14 55
336773: NA 9E 3525 <NA> LGA SYR NA 198 22 0
336774: NA MQ 3461 N535MQ LGA BNA NA 764 12 10
336775: NA MQ 3572 N511MQ LGA CLE NA 419 11 59
336776: NA MQ 3531 N839MQ LGA RDU NA 431 8 40
time_hour
1: 2013-01-01 05:00:00
2: 2013-01-01 05:00:00
3: 2013-01-01 05:00:00
4: 2013-01-01 05:00:00
5: 2013-01-01 06:00:00
---
336772: 2013-09-30 14:00:00
336773: 2013-09-30 22:00:00
336774: 2013-09-30 12:00:00
336775: 2013-09-30 11:00:00
336776: 2013-09-30 08:00:00
我們可以通過以下方式實作大部分目標:
> print(as.data.table(nycflights13::flights), nrows=5, topn=5, class=TRUE, trunc.cols=TRUE)
year month day dep_time sched_dep_time dep_delay arr_time
<int> <int> <int> <int> <int> <num> <int>
1: 2013 1 1 517 515 2 830
2: 2013 1 1 533 529 4 850
3: 2013 1 1 542 540 2 923
4: 2013 1 1 544 545 -1 1004
5: 2013 1 1 554 600 -6 812
---
336772: 2013 9 30 NA 1455 NA NA
336773: 2013 9 30 NA 2200 NA NA
336774: 2013 9 30 NA 1210 NA NA
336775: 2013 9 30 NA 1159 NA NA
336776: 2013 9 30 NA 840 NA NA
12 variables not shown: [sched_arr_time <int>, arr_delay <num>, carrier <char>, flight <int>, tailnum <char>, origin <char>, dest <char>, air_time <num>, distance <num>, hour <num>, ...]
我不知道如何不顯示底部這么多行。除此之外,幸運的是,我們可以將它們設定為選項,無論是在每個會話中(如下面的 R repl 提示符)還是在.Rprofile檔案中以供持久使用。
options(datatable.print.nrows=5, datatable.print.topn=5, datatable.print.class=TRUE, datatable.print.trunc.cols=TRUE)
as.data.table(nycflights13::flights)
# year month day dep_time sched_dep_time dep_delay arr_time
# <int> <int> <int> <int> <int> <num> <int>
# 1: 2013 1 1 517 515 2 830
# 2: 2013 1 1 533 529 4 850
# 3: 2013 1 1 542 540 2 923
# 4: 2013 1 1 544 545 -1 1004
# 5: 2013 1 1 554 600 -6 812
# ---
# 336772: 2013 9 30 NA 1455 NA NA
# 336773: 2013 9 30 NA 2200 NA NA
# 336774: 2013 9 30 NA 1210 NA NA
# 336775: 2013 9 30 NA 1159 NA NA
# 336776: 2013 9 30 NA 840 NA NA
# 12 variables not shown: [sched_arr_time <int>, arr_delay <num>, carrier <char>, flight <int>, tailnum <char>, origin <char>, dest <char>, air_time <num>, distance <num>, hour <num>, ...]
這非常接近。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/469452.html
下一篇:根據條件顯示圖表
