Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何根据R中的列值选择行_R_Matrix_Dataframe_Rows - Fatal编程技术网

如何根据R中的列值选择行

如何根据R中的列值选择行,r,matrix,dataframe,rows,R,Matrix,Dataframe,Rows,数据集如下所示: daily.sample day1 day2 day3 day4 day5 day6 day7 day8 day9 day10 day11 day12 day13 day14 132304 919 420 1021 331 1012 606 256 58 302 87 859 1140 603 1472 121945 419 1048 541 336 1086 796 95 578 1419 985 752

数据集如下所示:

daily.sample
       day1 day2 day3 day4 day5 day6 day7 day8 day9 day10 day11 day12 day13 day14
132304  919  420 1021  331 1012  606  256   58  302    87   859  1140   603  1472
121945  419 1048  541  336 1086  796   95  578 1419   985   752   570   865   242
130055 3036 1473 3043 3291 4869 2902 5306 4480 4820   254  2652  2529  3346   995
我想选择满足以下条件的行: 其第1天的值与第8天的值接近 第2天的值与第9天的值接近 第3天的值与第10天的值接近 ...

我所说的接近是指差异在一个范围内,或者类似的范围内
“0.9数据框的右侧部分从左侧部分减去:

distance <- abs(daily.sample[ , 1:7, drop = FALSE ] - daily.sample[ , 8:14, drop  =FALSE ])

distance谢谢你的建议!效果很好!实际上我的目的是让行“在所有7列中都接近”,但我会解决它~再次感谢你,而不是尝试像
daily这样的方法。示例[应用(比率,1,函数(x)all(x<(10/7)),]
。如果有任何不清楚的地方,并且您的问题仍然没有得到回答,请告诉我。但是如果问题得到了回答,请同时单击“接受”按钮。
ratio <- daily.sample[ , 1:7, drop = FALSE ] / daily.sample[ , 8:14, drop  =FALSE ]
daily.sample[ distance[ ,"day1" ] < 1000, ]

       day1 day2 day3 day4 day5 day6 day7 day8 day9 day10 day11 day12 day13 day14
132304  919  420 1021  331 1012  606  256   58  302    87   859  1140   603  1472
121945  419 1048  541  336 1086  796   95  578 1419   985   752   570   865   242
daily.sample[ ratio[ , "day1"] > 0.7 & ratio[ , "day1"] < (10/7),  ]


       day1 day2 day3 day4 day5 day6 day7 day8 day9 day10 day11 day12 day13 day14
121945  419 1048  541  336 1086  796   95  578 1419   985   752   570   865   242
daily.sample[ ratio[ , "day1"] < (10/7),  ].