【发布时间】:2018-04-26 10:28:15
【问题描述】:
在此先感谢大家。
我有以下数据:
set.seed(123)
data <- data.frame (name=LETTERS[sample(1:26, 500, replace=T)],present=sample(0:1,500,replace = T))
我想快速计算每个字母的当前观察值(1)的百分比。我可以手动完成,但我相信有一种更简单的方法:
library(dplyr)
A <- filter(data, name=="A" & present==1)
A2 <- filter(data, name=="A")
data$Percentage[data$name=="A"] <- nrow(A)/nrow(A2)
以此类推,直到我到达“Z”。
我可以自动完成此任务而无需手动更改“名称”列的值吗?
最好的问候,
【问题讨论】:
-
您可能需要
prop.table(table(data))[,1]