2

我有一个包含 72 列和 409 行的数据框,称为:spect

问题:print(spect)不显示整个数据框。当我滚动到控制台顶部时,我看到以下内容:

96       NA       NA       2      NA      NA       NA            
97       NA       NA       2      NA      NA       NA               
98       NA       NA       1       0      NA       NA 

上面显示的输出的问题是我没有看到变量,并且行从 nr 开始。96.

但是,当我要求 R 显示一个子集时,比如说 print(spect[,1:3]) 我得到了预期的结果:

print(spect[,1:3])
    idnr gender      age
1      1 kvinde 22.07671
2      2 kvinde 32.46575
3      3 kvinde 19.72055
4      4   mand 19.95617

此外,当我编写fix(spect)编辑器时,会以预期的正确结果打开。此外,当我对数据进行计算时,它似乎工作正常。对于具有大约 30 个变量的较小数据框,我没有这个问题。我没有收到错误消息。

最大打印是

getOption("max.print") [1] 99999

但是控制台没有接近那个最大值,实际上它只显示了大约 2000 行。重新启动计算机和 R 并删除所有对象并按“control + l”清除控制台后,我得到了同样的错误。

那么这只是R中的一个错误还是我错过了什么?

4

1 回答 1

3

我假设您坐在 Unix(Linux、MacOS)终端中。终端对您可以向后滚动的行数有限制,您需要更改此限制才能看到所有内容。下面是gnome-terminal显示无限回滚历史复选框选项的屏幕截图:

在此处输入图像描述

max.print 选项仅影响打印的项目数。只有当您在输出的末尾(底部)看到以下(或类似的)消息时,它才会打动您:

 [ reached getOption("max.print") -- omitted 998000 entries ]

也就是说,在大多数情况下,通过滚动终端查看大型数据帧是不必要且不切实际的。通常,人们对某些特定行感兴趣,并且尝试选择这些行。或者一个块一块地检查它:

spect[ 1:50, ]
spect[ 51:100, ]

等等。或者,尝试实现数据的令人满意的图形表示。

于 2012-10-15T16:38:48.257 回答