dat*_*ous 1 conditional r count aggregation
type如果满足条件,我想计算每行有多少行x == 0.在SQL中类似于一个组
这是一个数据示例
type x
search 0
NULL 0
public 0
search 1
home 0
home 1
search 0
Run Code Online (Sandbox Code Playgroud)
我假设您想要在满足特定条件(当变量具有某个值时)时找到行数.
如果是这种情况,那么我想你将"x"作为列中表示的变量."x"可以采用多个值.假设您想要在x为0时找到数据中有多少行.这可以通过以下方式完成:
nrow(subset(data, x=="0")
Run Code Online (Sandbox Code Playgroud)
'data'是R中数据集的对象名称
编辑:
我现在正在看你编辑的数据帧.您可以使用它来解决您的问题:
table(data$type, data$x)
Run Code Online (Sandbox Code Playgroud)
小智 5
You could also use the sqldf package:
library(sqldf)
df <- data.frame(type=c('search','NULL','public','search','home','home','search'),x=c(0,0,0,1,0,1,0))
sqldf("SELECT type, COUNT(*) FROM df WHERE x=0 GROUP BY type")
Run Code Online (Sandbox Code Playgroud)
which gives the following result:
type COUNT(*)
1 NULL 1
2 home 1
3 public 1
4 search 2
Run Code Online (Sandbox Code Playgroud)