我有一个数据集,想在X
和Y
之间进行关联。但是,我只想查看大于1的X
值。
cor(Data$X, Data$Y, use = "complete.obs")
我添加什么参数以仅在X
值大于1的情况下在Y
和X
之间进行关联?
答案 0 :(得分:2)
您可以使用[
运算符进行子集化。
尝试一下:
# Generate Example Data
Data <- data.frame(X = seq(-5, 10, 1),
Y = sample(1:100, 16))
with(data = Data[Data$X > 1, ], cor(X, Y, use = "complete.obs"))
[
让我们以my.data.frame[rows, columns]
样式指定行和列。在这里,我们指定仅需要X > 1
处的行,但只希望所有列。我们还可以执行以下操作以按名称分别询问每一列:
cor(Data[Data$X > 1, "X"], Data[Data$X > 1, "Y"], use = "complete.obs"))
甚至以下内容可以将列向量作为子集
cor(Data$X[Data$X > 1], Data$Y[Data$X > 1], use = "complete.obs"))
当然,这些只是为了说明灵活性。最好对整个数据集进行一次子集处理,以免出现差异。