簡體   English   中英

如何避免在R data.table的STOUT中顯示標題?

[英]How to avoid showing headers in STOUT of R data.table?

我試圖避免在R的STOUT data.table輸出中顯示標題。 Akrun在相關主題中說,使用print可以實現空路由。

如果您對NULL路由不滿意,則可能必須通過修改現有打印來創建用於打印的自定義功能

library(data.table)

# http://stackoverflow.com/a/43706344/54964

DF[time < 8]

輸出我想避開STOUT中的第一個標題行

#    Field time  T Experiment time_expected    timeN
# 1: Acute  0.0  0          A             6 0.000000

我們可以使用unname

unname(DF[time <8])[]

# 1: Acute 0.0  0 A 6 0.000000
# 2:    An 7.7 26 B 6 1.283333
# 3:    Fo 0.0  0 B 5 0.000000
# 4: Acute 7.5  1 C 6 1.250000
# 5:    An 7.9 43 C 6 1.316667
# 6:    En 0.0  0 C 6 0.000000
# 7:    Fo 5.4  1 C 5 1.080000
# 8:    An 7.8 77 D 6 1.300000
# 9:    En 0.0  0 D 6 0.000000
#10:    Fo 0.0  0 D 5 0.000000
#11: Acute 0.0  0 E 6 0.000000
#12:    An 7.9 60 E 6 1.316667
#13:    Fo 0.0  0 E 5 0.000000
#14:    Fo 7.9  3 F 5 1.580000

避免空行的一個選擇是

cat(trimws(capture.output(unname(DF[time <8]))[-1]) , sep="\n")
#1: Acute 0.0  0 A 6 0.000000
#2:    An 7.7 26 B 6 1.283333
#3:    Fo 0.0  0 B 5 0.000000
#4: Acute 7.5  1 C 6 1.250000
#5:    An 7.9 43 C 6 1.316667
#6:    En 0.0  0 C 6 0.000000
#7:    Fo 5.4  1 C 5 1.080000
#8:    An 7.8 77 D 6 1.300000
#9:    En 0.0  0 D 6 0.000000
#10:    Fo 0.0  0 D 5 0.000000
#11: Acute 0.0  0 E 6 0.000000
#12:    An 7.9 60 E 6 1.316667
#13:    Fo 0.0  0 E 5 0.000000
#14:    Fo 7.9  3 F 5 1.580000

為了更好地格式化,可以避免trimws

cat(capture.output(unname(DF[time <8]))[-1] , sep="\n")
# 1: Acute 0.0  0 A 6 0.000000
# 2:    An 7.7 26 B 6 1.283333
# 3:    Fo 0.0  0 B 5 0.000000
# 4: Acute 7.5  1 C 6 1.250000
# 5:    An 7.9 43 C 6 1.316667
# 6:    En 0.0  0 C 6 0.000000
# 7:    Fo 5.4  1 C 5 1.080000
# 8:    An 7.8 77 D 6 1.300000
# 9:    En 0.0  0 D 6 0.000000
#10:    Fo 0.0  0 D 5 0.000000
#11: Acute 0.0  0 E 6 0.000000
#12:    An 7.9 60 E 6 1.316667
#13:    Fo 0.0  0 E 5 0.000000
#14:    Fo 7.9  3 F 5 1.580000

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM