R-在新数据框中:如果单元格匹配同一行的另一列,则

R-在新数据框中:如果单元格匹配同一行的另一列,则,r,dataframe,R,Dataframe,在R中实现这一点的最佳方法是什么 谢谢。您可以将前两列与总计值进行比较 B1n B2n 1 0 0 0 0 0 0 0 res您可以将前两列与total值进行比较 B1n B2n 1 0 0 0 0 0 0 0 res以下是解决此问题的另一种方法。您可以使用dplyr::transmute,它与dplyr::mutate相反,它将为您提供两个独立的列。内在转化只是条件 res <- +(d[1:2] == d$total) res # B1 B2

在R中实现这一点的最佳方法是什么


谢谢。

您可以将前两列与
总计值进行比较

B1n B2n
1   0
0   0
0   0
0   0

res您可以将前两列与
total
值进行比较

B1n B2n
1   0
0   0
0   0
0   0

res以下是解决此问题的另一种方法。您可以使用dplyr::transmute,它与dplyr::mutate相反,它将为您提供两个独立的列。内在转化只是条件

res <- +(d[1:2] == d$total)
res
#     B1 B2
#[1,]  1  0
#[2,]  0  0
#[3,]  0  0
#[4,]  0  0
库(dplyr)
newdf%转换(B1n=ifelse(B1+B2==B1,1,0),B2n=ifelse(B1+B2==B2,1,0))
>新发展基金
B1n-B2n
1   1   0
2   0   0
3   0   0
4   0   0

以下是解决此问题的另一种方法。您可以使用dplyr::transmute,它与dplyr::mutate相反,它将为您提供两个独立的列。内在转化只是条件

res <- +(d[1:2] == d$total)
res
#     B1 B2
#[1,]  1  0
#[2,]  0  0
#[3,]  0  0
#[4,]  0  0
库(dplyr)
newdf%转换(B1n=ifelse(B1+B2==B1,1,0),B2n=ifelse(B1+B2==B2,1,0))
>新发展基金
B1n-B2n
1   1   0
2   0   0
3   0   0
4   0   0

您能否解释一下这个答案,因为许多新用户可能很难理解发生了什么。谢谢你也请解释这个答案,因为许多新用户可能很难理解到底发生了什么。谢谢