满足某些条件的列数或列数

问题描述 投票:0回答:1

我想创建一个新列,该列计算特定列中满足的条件数。

例如,使用mtcars,条件可能如下:"disp" > 150, "hp < 100", "wt" > 2.65

[查看前三行-马自达RX4,马自达RX4 Wag,Datsun 710-新列mtcars$metcri应分别为1、2和1。

我看过许多其他文章,并且大多数关注子集counting the total number of rows that match the criteria或使用one criteria across all the columns of concern。我确实看到一些重新使用if_else statements的东西,但是那没有用,新列的结果为52。以防万一我错过了一些东西,下面是代码:

mtcars$metcri <- sum(if_else(mtcars$disp > 150, 1, 0, missing = NULL), 
                      if_else(mtcars$hp < 100, 1, 0, missing = NULL), 
                      if_else(mtcars$wt > 2.65, 1, 0, missing = NULL))

任何帮助将不胜感激。

r count criteria
1个回答
2
投票

您可以直接添加三个逻辑条件

mtcars$metcri <- (mtcars$disp > 150)  +  (mtcars$hp < 100) + (mtcars$wt > 2.5)
© www.soinside.com 2019 - 2024. All rights reserved.