我在R中有一个包含2列的数据框。我想检查第一列中的数据是否位于以下范围内:x> 80,70
count1
Var1 Freq
1 0.00000 7
2 10.00000 1
3 16.66667 1
4 30.95238 1
5 33.33333 2
数据框总共包含32行,第1列中的值范围为0到100。 输出应该是这样的:
Var1 Freq
1 x<60 12
2 60<x<70 *something*
3 70<x<80 *something*
4 x>80 *something*
答案 0 :(得分:2)
使用datatable
库
df是您的数据框:
breaks <- c(0,60,70,80,Inf)
setDT(df)
df[,list(SUM = sum(freq)),by = list(VAR=cut(var1,breaks = breaks))][order(VAR)]
使用dplyr
库:
df %>%
group_by(VAR = cut(var1, breaks = breaks)) %>%
summarise(SUM = sum(freq)) %>%
arrange(VAR)