R 如何写入循环以计算特定行中的频率

R 如何写入循环以计算特定行中的频率,r,loops,for-loop,R,Loops,For Loop,我想按年龄组统计特定行的频率,步骤如下: 1.当“icd3”列满足以下条件时,“pud”的数据帧 2.选择符合条件的行并计算频率 代码如下: u2<-which(pud$icd3>="A00"&pud$icd3<="A99"| pud$icd3>="B00"&pud$icd3<="B94"| pud$icd3=="B99") u3<-which(pud$icd3>="A00"&

我想按年龄组统计特定行的频率,步骤如下: 1.当“icd3”列满足以下条件时,“pud”的数据帧 2.选择符合条件的行并计算频率

代码如下:

u2<-which(pud$icd3>="A00"&pud$icd3<="A99"|
              pud$icd3>="B00"&pud$icd3<="B94"|
              pud$icd3=="B99")
u3<-which(pud$icd3>="A00"&pud$icd3<="A99"|
            pud$icd3>="B00"&pud$icd3<="B49"|
            pud$icd3>="B90"&pud$icd3<="B94"|
            pud$icd3=="B99")
for (i in 2:3){co[i]=addmargins(table(pud[u[i],]$agegroups))}

u2=“A00”&pud$icd3=“B00”&pud$icd3如果您想要频率,为什么不这样做

sum(pud$icd3>="A00"&pud$icd3<="A99"|
              pud$icd3>="B00"&pud$icd3<="B94"|
              pud$icd3=="B99")

sum(pud$icd3>=“A00”&pud$icd3=“B00”&pud$icd3欢迎来到StackOverflow!请阅读有关的信息以及如何给出一个值。这将使其他人更容易帮助您。
u
找不到,因为
u
尚未生成…我建议在
将您的条件编码到一个新变量(列)中在
pud
中,然后
按新列和
tall
对你进行分组。一个
iris
示例:
iris\u条件%突变(类别=case\u当(物种==“刚毛”和花瓣。长度<4.5~“小刚毛”,物种==“花色”和花瓣。长度<4.5~“小花色”,真~“一般类别”))iris\u条件%>%group\u by(类别)%%>%tally()