循环选择R中两列中的第一个和最后一个值
我需要循环到df2中,取df2$col1中的第一个值和df2$col2中的最后一个值,并使用这些值仅选择df1$col1中的对应行和所有中间行 如果你能帮我,我会非常感激的 df1 df2循环选择R中两列中的第一个和最后一个值,r,loops,R,Loops,我需要循环到df2中,取df2$col1中的第一个值和df2$col2中的最后一个值,并使用这些值仅选择df1$col1中的对应行和所有中间行 如果你能帮我,我会非常感激的 df1 df2 正如SimonO101所指出的,您可以在%中使用“[”和% 试试这个: df1[df1$col1 %in% head(df2,1)[1,1] : tail(df2, 1)[1,2], , drop=FALSE] 编辑 正如@flodel所评论的,您甚至可以使用`[`子集设置对您很有用。我建议您在控制台中键入
正如SimonO101所指出的,您可以在%中使用
“[”
和%
试试这个:
df1[df1$col1 %in% head(df2,1)[1,1] : tail(df2, 1)[1,2], , drop=FALSE]
编辑
正如@flodel所评论的,您甚至可以使用`[`
子集设置对您很有用。我建议您在控制台中键入?“[”
。还有帮助(“[.data.frame”)
。OP有两个data.framesdf1
和df2
,在您的解决方案中只有一个,它回答了问题吗?我遗漏了什么吗?:不是我遗漏了第二个data.frame名称!我以为只有一个。使用=
和
col1 col2
1200 1250
1299 1325
1350 1500
df1[df1$col1 %in% head(df2,1)[1,1] : tail(df2, 1)[1,2], , drop=FALSE]
df1[df2[1,1] <= df1$col1 & df1$col1 <= df2[nrow(df2),2], , drop=FALSE]
df1[df1$col1 >= df2[1,1] & df1$col1 <= df2[nrow(df2),2], , drop=FALSE]