tapply,plotting,length不匹配

时间:2015-09-26 08:03:40

标签: r plot tapply

我正在尝试从2列的数据集生成绘图 - 第一列包含距离,第二列包含在这些距离处测量的内容的相关性。

现在有多个条目具有相同的距离但不同的相关值。我想取这些不同条目的平均值,并生成距离与相关性的图。所以,这就是我所做的(数据集称为相关表):

bins <- sort(unique(correlationtable[,1]))
corr <- tapply(correlationtable[,2],correlationtable[,1],mean)
plot(bins,corr,type = 'l') 

然而,这给了我一个错误,即箱子和箱子的长度不匹配。

我无法弄清楚我做错了什么。

1 个答案:

答案 0 :(得分:0)

我尝试了一些随机数据,对我而言每次都有效。要跟踪错误,您需要向我们提供不适合您的具体示例。

然而,回答这里的问题是做同样事情的另一种方法:

corr <- tapply(correlationtable[,2],correlationtable[,1],mean)
bins <- as.numeric(names(corr))
plot(bins,corr,type = 'l')

这使用了tapply返回names属性的事实,然后将其转换为数字并用作距离。它必须与corr的长度相同。