2017-10-16 51 views
-2

1个元件的我有以下的数据帧:创建元素的值的矢量,而不是作为R

> head(casted) 
    ID nobs sulfate nitrate 
    1 1 117 3.880701 0.5481368 
    2 2 1041 4.460811 0.9474492 
    3 3 243 4.327613 0.6585144 
    4 4 474 4.214956 0.8701622 
    5 5 402 4.210072 1.0939005 
    6 6 228 4.102132 0.5206404 

我想增加一列“COR”与使用COR()每ID的硫酸盐和硝酸盐列,但是当我用下面的代码,我只是得到1倍的值填充整列:

casted$cor <- cor(casted$sulfate, casted$nitrate) 
    > head(casted) 
    ID nobs sulfate nitrate  cor 
1 1 117 3.880701 0.5481368 0.00940941 
2 2 1041 4.460811 0.9474492 0.00940941 
3 3 243 4.327613 0.6585144 0.00940941 
4 4 474 4.214956 0.8701622 0.00940941 
5 5 402 4.210072 1.0939005 0.00940941 
6 6 228 4.102132 0.5206404 0.00940941 

我知道我做错了什么,但我仍然不能想办法。

谢谢! Meera

+1

你找不到两个数字的相关性,你需要两个_vectors_。因此,'cor'(铸造$硫酸盐,铸造$硝酸盐)'正确地给你一个数字,'硫酸盐'和'硝酸盐'的相关性。 – useR

回答

1

首先你应该知道什么是相关性。相关性是一种用于查找两个样本之间关系的统计方法。所以要计算相关性,你需要有两个系列而不是两个数字。例如,我们不能说出1和2之间的相关性,因为我们没有足够的信息,或者我们可以说我们不能根据两个数字创建协方差矩阵。你做的是对的,cor列是硫酸盐柱和硝酸柱的相关性。计算使用两列中的每个数字,所以它只会给出一个结果。