跨R中的两列获取所需值
我目前正试图找到一种方法来获取一个特定的ID作为一个新列 我的data.frame如下所示:跨R中的两列获取所需值,r,R,我目前正试图找到一种方法来获取一个特定的ID作为一个新列 我的data.frame如下所示: V1 V2 A B C A D A A E 我想要得到的是: V1 V2 V3 A B B C A C D A D A E E 基本上,一个新的专栏不是一个,但我不知道如何做到这一点 我们可以使用ifelse 或者另一个选项是使用max.col创建行/列索引,然后根据索引提取值 df1[cbind(seq_len(nrow(df1)), max.col(df1 != 'A'))] #[1
V1 V2
A B
C A
D A
A E
我想要得到的是:
V1 V2 V3
A B B
C A C
D A D
A E E
基本上,一个新的专栏不是一个,但我不知道如何做到这一点 我们可以使用ifelse
或者另一个选项是使用max.col创建行/列索引,然后根据索引提取值
df1[cbind(seq_len(nrow(df1)), max.col(df1 != 'A'))]
#[1] "B" "C" "D" "E"
数据
我们可以用ifelse
或者另一个选项是使用max.col创建行/列索引,然后根据索引提取值
df1[cbind(seq_len(nrow(df1)), max.col(df1 != 'A'))]
#[1] "B" "C" "D" "E"
数据
另一个base R选项在包含多行时速度较慢
df$V3 <- apply(df,1,setdiff,"A")
另一个base R选项在包含多行时速度较慢
df$V3 <- apply(df,1,setdiff,"A")
欢迎来到SO!我对你的问题做了一个小修改,去掉了一些玩笑。虽然这种情绪值得赞赏,但Stack Overflow/Exchange与论坛有点不同,因为我们不鼓励这样做,以使问题和答案更简短,让信息寻求者更具可读性。干杯欢迎来到SO!我对你的问题做了一个小修改,去掉了一些玩笑。虽然这种情绪值得赞赏,但Stack Overflow/Exchange与论坛有点不同,因为我们不鼓励这样做,以使问题和答案更简短,让信息寻求者更具可读性。干杯
df$V3 <- apply(df,1,setdiff,"A")
> df
V1 V2 V3
1 A B B
2 C A C
3 E A E
4 A D D