我有一个相关分数myCorVector
的矢量,其中包含从1到-1的一系列值。
向量myCorVector
对数据框myDataFrame
的每一行都有分数。
我可以通过指定myDataFrame[order(myCorVector),]
来订购数据框行。
我想要做的是订购数据框,但从myDataFrame
检索myCorVector
值小于0的行的子集。
如果我在subset()
上应用myCorVector
,则order()
返回的索引不再与myDataFrame
中的有效行索引关联。
是否有快速和/或优雅的方式来执行此操作,for
不需要myCorVector
循环?
答案 0 :(得分:1)
将分数添加到data.frame,创建一个排序副本和子集:
myDataFrame$myCorVector <- myCorVector
odf <- myDataFrame[order(myDataFrame$myCorVector), ]
odf[odf$myCorVector < 0, ]
答案 1 :(得分:0)
简单索引应该完成这项工作:
myDataFrame[order(myCorVector),][sort(myCorVector)<0,]
棘手的部分是order
强加的订单变更;没有排序它只是:
myDataFrame[myCorVector<0,]