I have a data frame:
Y X1 X2 X3
1 1 0 1
1 0 1 1
0 1 0 1
0 0 0 1
1 1 1 0
0 1 1 0
我希望对Y
列中所有与其他列等于1
的行求和,即 sum(Y=1|Xi =1)
。例如,对于列X1
,s1 = sum(Y=1|Xi =1) =1 + 0 +1+0 =2
Y X1
1 1
0 1
1 1
0 1
对于 X2
列,s2 = sum(Y=1|Xi =1) = 0 +1+0 =1
。
Y X2
0 1
1 1
0 1
对于X3
列,s3 = 在Xi=1时,sum(Y=1)的总和 = 1+1+0+0 = 2
Y X3
1 1
1 1
0 1
0 1
我大致想使用apply(df, 2, sum)
来处理数据框的列,但我不知道如何基于Xi
对每一列进行子集化然后计算Y
的sum
。感谢任何帮助!
dput
函数,以便于回答者更易于重现你的数据。可以参考以下指南:https://dev59.com/eG025IYBdhLWcg3whGSx#28481250 - Frank