我有一个与this帖子有些相似的问题,但由于条件略有变化,它对我不起作用。
我有2个数据框,如下所示:
> effect
V1 V2 V3
1 G1 activates G2
2 G3 stops G4
3 G5 activates G6
4 G6 stops G7
> expression
V1 V2
1 G1 1
2 G2 0
3 G3 1
4 G4 0
5 G5 1
6 G6 1
7 G7 1
我想只保留符合以下条件的effect
数据框中的那些行:
如果effect$V2 == activates
则expression$V2
应为1
effect$V3
和expression$V1
相同
如果effect$V2 == stops
,那么expression$V2
应为0
effect$V3
和expression$V1
相同
根据这个标准,我会得到这个结果:
> results
V1 V2 V3
1 G3 stops G4
2 G5 activates G6
因为这与给定条件一致,因此对于第一行,V2=stops
的{{1}}和expression$V2
为G4
。
同样,对于0
的第2行V2=activates
和expression$V2
是G6
数据帧的结构如下。任何帮助将不胜感激。
DF1:
1
DF2:
structure(list(V1 = structure(1:4, .Label = c("G1", "G3", "G5",
"G6"), class = "factor"), V2 = structure(c(1L, 2L, 1L, 2L), .Label = c("activates",
"stops"), class = "factor"), V3 = structure(1:4, .Label = c("G2",
"G4", "G6", "G7"), class = "factor")), .Names = c("V1", "V2",
"V3"), class = "data.frame", row.names = c(NA, -4L))
答案 0 :(得分:0)
我已经找到了答案。它是:
POST