【发布时间】:2016-11-29 15:55:21
【问题描述】:
我希望使用 R 中的 rowSums 函数计算 var1 到 var10 的总和,但仅限于 var11 等于 1 的行。
我尝试对我的数据进行子集化,以仅针对 var11 等于 1 的数据创建 var1-var10 的总和,然后将我的原始数据帧与子集数据帧重新合并。这个问题是它导致我的主数据集排除所有变量的所有行,其中 var11 等于 1,当我想为完整数据集保留这些行时,但将它们指定为 NA 仅用于总和var1-var10.
【问题讨论】:
-
使用 ifelse 函数
-
我遇到了一些麻烦,因为我可以使用 ifelse 为 var11 创建缺失值,但我不确定如何使用 ifelse 为 var11 指定 var1 - var10 的缺失值。有没有办法根据 var11 的值指定 var1-var10 上的缺失值?
-
类似
ifelse(var11 == 1, rowSums(...), NA)? -
我们正在苦苦挣扎,因为您没有提供可重现的示例。
-
是的! ifelse(var11 == 1, rowSums(...), NA) 工作得很好。谢谢!这是有用的反馈——我将在未来提供可重复的示例,对此感到抱歉。
标签: r sum conditional subset