我们使用以下命令解析包含一些数字的CSV文件:
tt <- read.table("test2.csv",sep=";",stringsAsFactors=FALSE)
打印tt[1,]
可以产生一个很好的矢量,sd(tt[1,])
是明智的。
但是当我们尝试
diff(tt[1,])
命令行返回错误:
Error in r[i1] - r[-length(r):-(length(r) - lag + 1L)] :
non-numeric argument to binary operator error
为什么?有什么想法吗?
3条答案
按热度按时间bwntbbo31#
我想在你的
tt[1,]
里所以如果你使用
as.numeric
,应该没问题。下面是一个我们可以检验的例子:
gdx19jrr2#
这也适用于:
vhmi4jdf3#
我不认为这个问题与类dataframe(df)有关。问题是你试图在一个可能是多列的df上运行diff()。根据文档,diff所需的参数是一个向量或矩阵。我建议尝试一下:
然后运行:
希望这个有用。