用R制作表格的传统方法:
data(mtcars)
round(100*prop.table(xtabs(~ gear + cyl, data = mtcars), 1), 2)返回
cyl
gear 4 6 8
3 6.67 13.33 80.00
4 66.67 33.33 0.00
5 40.00 20.00 40.00为了使用magrittr管道复制这一点,我尝试了:
library(magrittr)
mtcars %>%
xtabs(~ gear + cyl, data = .) %>%
prop.table(., 1)到目前为止效果很好
cyl
gear 4 6 8
3 0.06666667 0.13333333 0.80000000
4 0.66666667 0.33333333 0.00000000
5 0.40000000 0.20000000 0.40000000但任何试图执行下一部分,其中我转换成百分比,然后轮,结果是一个错误。例如:
mtcars %>%
xtabs(~ gear + cyl, data = .) %>%
100*prop.table(., 1)和
mtcars %>%
xtabs(~ gear + cyl, data = .) %>%
prop.table(., 1) %>%
100 * .都会导致错误。我遗漏了什么?
发布于 2015-01-26 18:22:03
您需要将*放在引号- "*"()中,还需要在prop.table中使用1作为参数来匹配示例。
mtcars %>%
xtabs(~ gear + cyl, data = .) %>%
prop.table(., 1) %>%
"*"(100 ) %>% round(.,2)https://stackoverflow.com/questions/28156125
复制相似问题