sp1.col <- c("A","A","A","A","B","B","B","B","C","C","C","C")
sp1.val <- c(1:12)
sp2.col <- c("A","B","C","D","A","B","C","D","A","B","C","D")
sp2.val <- c(1:12)
df <- data.frame(sp1.col, sp1.val, sp2.col, sp2.val)
我想要對資料框進行子集化,以便 sp1 和 sp2 具有相同的物種名稱,并且消除所有其他行。
所以最終的資料幀應該看起來像
sp1.col sp1.val sp2.col sp2.val
A 1 A 1
B 5 B 5
C 11 C 11
uj5u.com熱心網友回復:
> with(df,df[sp1.col==sp2.col,])
sp1.col sp1.val sp2.col sp2.val
1 A 1 A 1
6 B 6 B 6
11 C 11 C 11
uj5u.com熱心網友回復:
我們可以使用subset的base R(沒有軟體包需要)
subset(df, sp1.col == sp2.col)
-輸出
sp1.col sp1.val sp2.col sp2.val
1 A 1 A 1
6 B 6 B 6
11 C 11 C 11
uj5u.com熱心網友回復:
library(dplyr)
df %>%
filter(sp1.col == sp2.col)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/338776.html
上一篇:用于過濾和匯總資料幀的Rfor回圈(使用dyplr)?
下一篇:在日期范圍內加入
