Closed 。这个问题需要细节或清晰度 /help/closed-questions 。目前不接受答案。
我正在运行一个用 r 语言编写的程序,该程序旨在将许多 csv 数据文件编译成一个 csv 文件,然后生成一个输出文件,其中包含对组合文件中选定的几个变量进行简单计算的输出。后面的过程是通过使用组合文件作为输入、选择变量并指定我需要的值的类型来完成的。添加到此解释中,每天都会获取数据文件,这些数据文件通过 r 程序来获取一些分析,例如选定时间间隔内数据的最小值、最大值、平均值或总和。
继续讨论我在这个程序中遇到的问题,该程序通常能够生成组合的 csv 文件,没有太大问题,但是当涉及到生成输出文件的部分时,该程序有时会生成聚合错误消息:
aggregate.date.frame 中的错误(mf[1L]、mf[-1L]、FUN = FUN,...):
没有要聚合的行
此错误消息仅出现在某些组合数据文件中,并且让我更加困惑,因为导致此类问题的组合 csv 文件中的数据与不导致此问题的组合文件没有显示任何差异。然而,目前我仍然怀疑组合数据 csv 文件而不是程序有问题,因为该程序通常适用于许多分析案例。
基本上,该程序使用聚合函数来计算输出文件。
我对使用 r 很陌生,我正在使用的程序由几个阶段组成,所以如果我的解释相当不清楚,我深表歉意。
至少,我想知道造成这种聚合错误的可能原因是什么。先感谢您。
给出此错误是因为传递给聚合的对象(无论匹配到什么)x
) 有零行。
下面给出了该函数的前 10 行:
> head(aggregate.data.frame, 10)
1 function (x, by, FUN, ..., simplify = TRUE)
2 {
3 if (!is.data.frame(x))
4 x <- as.data.frame(x)
5 FUN <- match.fun(FUN)
6 if (NROW(x) == 0L)
7 stop("no rows to aggregate")
8 if (NCOL(x) == 0L) {
9 x <- data.frame(x = rep(1, NROW(x)))
10 return(aggregate.data.frame(x, by, function(x) 0L)[seq_along(by)])
所以在你打电话之前aggregate
, call NROW
放在物体上,它会告诉你它是否为零。发生这种情况的原因有多种,但如果没有可重现的示例,就很难知道。原因之一可能是x
与错误的参数相匹配。但如果它对于某些 csv 文件运行良好,那么情况可能并非如此。更有可能的是,该对象确实有 0 行,可能是因为子集化的缘故。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)