0
我有兩個dataframes合併從數據幀到另一個一些列:DF1和DF2如何通過一個條件
df1=read.table(text="group co
A 24952
A 56826865
A 56829677
B 10951
B 24200
B 48557215
B 49537767", header=T, stringsAsFactors=F)
df2=read.table(text="group n1 n2 n3 n4
A 29671 0 46373 0.02
B 51236 0 57911 0.1
A 56483059 121.37 56826203 178.28
B 48497604 164.98 48531024 164.98", header=T, stringsAsFactors=F)
我想合併列2:由下列條件5 df2
到df1
:
df2
在
df1
相應行5
min(df2$n1)
行的;:
df1$group==df2$group & if df1$co < min(df2$n1)
在同一組中,然後合併第2列if df1$co > max(df2$n3)
,然後將max(df2$n1)
行的列2:5從df2
合併到df1
中的相應行中。
結果預計爲:
result=read.table(text="group co n1 n2 n3 n4
A 24952 29671 0 46373 0.02
A 56826865 56483059 121.37 56826203 178.28
A 56829677 56483059 121.37 56826203 178.28
B 10951 51236 0 57911 0.1
B 24200 51236 0 57911 0.1
B 48557215 48497604 164.98 48531024 164.98
B 49537767 48497604 164.98 48531024 164.98", header=T, stringsAsFactors=F)
感謝幫助。