我有一个带有长列名的 R 数据框。所以当我打印数据框时它太宽了。是否有一种简单的方法可以将数据框打印到屏幕上,并且列名出现在多行中?
我知道我可以缩短名称,但不想这样做。
最佳答案
您可以创建自定义 format.data.frame
函数,当 R 找到“长”名称时对行为进行修改:
long <- nchar(cn, "bytes") > 256L
cn[long] <- paste(substr(cn[long], 1L, 250L), "...")
names(rval) <- cn
并且由于数据帧在所有预处理之后被打印为矩阵,我们希望
print.default
(实际上,通用 print.default
)像 cat 一样处理转义字符(按原样打印,以便在打印 \n
时换行)。编辑
其实,
print.default
转义不可打印的字符(cat 在线帮助页面)Character strings are output ‘as is’ (unlike print.default which escapes non-printable characters and backslash [...])
所以你应该开始准备你自己的方法(另外,检查将 R 对象转换为 $$\LaTeX$$ 表的选项,可能有一个选项)。
关于r - 在多行中打印带有列名的 R 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14944082/