全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1742 10
2012-10-13
a <- data.frame(sex=c(1,1,2,2,1,1), bq=c(1,2,1,2,2,2))
             bq
sex         1            2       Total
      1  1(50.00%)   1 (50.00%)    2
      2  1(25.00%)   3 (75.00%)    4
如何得到上面的结果,存为data.frame。
谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-10-14 11:58:15
a <- data.frame(sex=c(1,1,2,2,1,1), bq=c(1,2,1,2,2,2))
levels(a$bq) <- c("1","2","total")
tm <- subset(a, sex == "1")
tf <- subset(a, sex == "2")
tm$bq <- c("total")
tf$bq <- c("total")
n <- rbind(a, tm , tf)
table(n)
m <- table(n)
m

m1 <- m[,1]/m[,3]
m2 <- m[,2]/m[,3]

m[,1] <- paste(m[,1],"(",m1,")")
m[,2] <- paste(m[,2],"(",m2,")")
m

怎么把小数 变百分数  我再想想
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-10-14 12:38:25
a <- data.frame(sex=c(1,1,2,2,1,1), bq=c(1,2,1,2,2,2))
levels(a$bq) <- c("1","2","total")
tm <- subset(a, sex == "1")
tf <- subset(a, sex == "2")
tm$bq <- c("total")
tf$bq <- c("total")
n <- rbind(a, tm , tf)
table(n)
m <- table(n)
m

m1 <- m[,1]/m[,3]
m2 <- m[,2]/m[,3]
m1<- m1*100
m2 <- m2*100
m[,1] <- paste(m[,1],"(",m1,"%)")
m[,2] <- paste(m[,2],"(",m2,"%)")
m

   bq
sex 1         2         total
  1 1 ( 25 %) 3 ( 75 %) 4   
  2 1 ( 50 %) 1 ( 50 %) 2  

完工!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-10-14 12:39:53
不过还是有空格
再想!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-10-14 12:47:28
a <- data.frame(sex=c(1,1,2,2,1,1), bq=c(1,2,1,2,2,2))
levels(a$bq) <- c("1","2","total")
tm <- subset(a, sex == "1")
tf <- subset(a, sex == "2")
tm$bq <- c("total")
tf$bq <- c("total")
n <- rbind(a, tm , tf)
table(n)
m <- table(n)
m

m1 <- m[,1]/m[,3]
m2 <- m[,2]/m[,3]
m[,1] <- paste(m[,1],"(",100*m1,"%)",sep="")   #spe="" 就没有空格了
m[,2] <- paste(m[,2],"(",100*m2,"%)",sep="")
m

bq
sex 1      2      total
  1 1(25%) 3(75%) 4   
  2 1(50%) 1(50%) 2

再想想,如果有小数后两位
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-10-14 14:22:45
a <- data.frame(sex=c(1,1,2,2,1,1,2,1), bq=c(2,2,2,1,2,2,1,2))
levels(a$bq) <- c("1","2","total")
tm <- subset(a, sex == "1")
tf <- subset(a, sex == "2")
tm$bq <- c("total")
tf$bq <- c("total")
n <- rbind(a, tm , tf)
m <- table(n)

m1 <- m[,1]/m[,3]
m2 <- m[,2]/m[,3]
m[,1] <- paste(m[,1],"(",round(100*m1,2),"%)",sep="")  #小数点后2位,没有空格
m[,2] <- paste(m[,2],"(",round(100*m2,2),"%)",sep="")
m

换了个 向量sex=c(1,1,2,2,1,1,2,1), bq=c(2,2,2,1,2,2,1,2)
结果:
bq
sex 1         2         total
  1 0(0%)     5(100%)   5   
  2 2(66.67%) 1(33.33%) 3


整数保留小数的问题, 楼主太追求细节了 呵呵
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群