如何避免警告 r:reached getoption(“max.print”)
您在 R 中可能遇到的警告消息是:
[ reached getOption("max.print") -- omitted 502 rows ]
当您尝试在 RStudio 中一次打印超过 1000 个值时,会出现此消息。
默认情况下,RStudio 只允许您一次打印 1000 个值。但是,您可以使用以下方法之一轻松增加此限制:
方法 1:将限制增加到特定值
#increase print limit to 2000 values
options( max.print = 2000 )
方法二:将限制提高到机器允许的最大金额
#increase print limit to max allowed by your machine
options(max. print = .Machine$integer. max )
以下示例展示了如何在实践中使用这些方法。
示例:增加 R 中的打印限制
假设我们在 R 中创建一个包含 1002 行 2 列的数据框:
#make this example reproducible
set. seeds (0)
#create data frame
df <- data. frame (x=runif(1002),
y=runif(1002))
#view head of data frame
head(df)
xy
1 0.8966972 0.68486090
2 0.2655087 0.38328339
3 0.3721239 0.95498800
4 0.5728534 0.11835658
5 0.9082078 0.03910006
6 0.2016819 0.50450503
接下来,假设我们尝试在 RStudio 中打印整个数据框:
#attempt to print entire data frame
df
我们只能显示前 500 行(即前 1000 个值),并且收到一条警告,指出 502 行已被省略。
但是,如果我们使用max.print函数,那么我们可以将打印限制增加到 2500 个值:
#increase print limit to 2500 values
options( max.print = 2500 )
#attempt to print entire data frame again
df
这次我们能够打印数据帧的全部 1002 行,并且由于我们增加了打印限制,因此我们没有收到任何警告消息。
如果我们想走极端,将打印限制设置为我们机器允许的最大值数,我们可以使用以下语法:
#increase print limit to max allowed by your machine
options(max. print = .Machine$integer. max )
但是,仅当您绝对需要能够显示数据框中的每一行时才使用此选项,因为如果您正在处理的数据非常大,则可能需要很长时间才能完成。
其他资源
以下教程解释了如何解决 R 中的其他常见错误:
如何在 R 中修复:名称与以前的名称不匹配
如何在 R 中修复:较长物体的长度不是较短物体长度的倍数
如何在 R 中修复:对比只能应用于具有 2 个或更多级别的因子