I have this code:
df<-data.frame(a=c(1,2,2,2,2), b=c(2,2,2,2,1), c=c(3,3,3,3,4), d=c(6,6,6,6,7))
tblFun <- function(x){
tbl <- table(x)
res <- cbind(tbl,round(prop.table(tbl)*100,2))
colnames(res) <- c('Count','Percentage')
res
}
If I ran:
do.call(rbind,lapply(df,tblFun))
最初的回答:
我收到以下信息:
Count Percentage
1 1 20
2 4 80
1 1 20
2 4 80
3 4 80
4 1 20
6 4 80
7 1 20
最初的回答是:但如果我运行以下命令:
as.data.frame(do.call(rbind,lapply(df,tblFun)))
最初的回答:
我收到:
Count Percentage
X1 1 20
X2 4 80
X1.1 1 20
X2.1 4 80
X3 4 80
X4 1 20
X6 4 80
X7 1 20
我想修改代码,使得第一列的数据框像在控制台中看到的输出一样(而不是我们使用View()
看到的矩阵的实际内容!),这可以如何实现?
请问该怎么做呢?
tibble
as_tibble(do.call(rbind, lapply(df, tblFun)))
- akrun