【发布时间】:2021-04-23 00:01:34
【问题描述】:
我有以下数据
pt_id <- c(1,1,1,1,1,2,2,2,3,3,3,3,3,4,4,4,4)
Tob_pk <- c(2, 5, 7, 1, 8, 12, 14, 3, 6, 8, 10, 20, 13, 5, 4, 12, 10)
Tobacco <- c("Once","Twice","Never", NA, NA, NA, NA, NA,"Once","Twice","Quit","Once",NA,NA,"Never", NA, "Never")
Alcohol <- c("Twice", "Once",NA, NA, "Never", NA, NA, "Once", NA, "Quit", "Twice", NA, "Once", NA, NA, "Never", "Never")
PA <- c("Once",NA,"Never", NA, NA, NA, NA, NA,"Once",NA,"Quit","Once",NA,NA,"Never", NA, NA)
mydata <- data.frame(pt_id, Tob_pk, Tobacco, Alcohol, PA)
mydata
我想要数据集中每个变量的摘要/比例,我尝试使用以下代码获取每个变量的摘要/比例
data_summ <- mydata %>%
summarize_at(.vars=3:5, funs(prop.table(.)))
但是,我收到以下错误
Error: Problem with `summarise()` input `Tobacco`.
x invalid 'type' (character) of argument
ℹ Input `Tobacco` is `prop.table(Tobacco)`.
Run `rlang::last_error()` to see where the error occurred.
我不确定我哪里出错了。如果我能得到任何建议来获得以下输出但也有 NA 的百分比,那将很有帮助。
Tobacco Alcohol PA
Never 0.3333333 Never 0.3333333 Never 0.3333333
Once 0.3333333 Once 0.3333333 Once 0.5000000
Quit 0.1111111 Quit 0.1111111 Quit. 0.1666667
Twice 0.2222222 Twice 0.2222222
提前致谢!
【问题讨论】: