下午好!
我已经通过stackoverflow查找过了,但是我找不到确切的问题,所以我们开始吧。
我有以下数据框架:
mydata <- read.table(header=TRUE, text="
rime point sound
50 80 50
80 80 20
5 90 80
0 10 80
50 80 50
80 80 20
5 90 80
0 10 80
5 90 80
0 10 80
")对于每一列,我想知道大于或等于50的观察值的百分比。我希望成品看起来像这样。
mydata2 <- read.table(header=TRUE, text="
rime point sound
40% 70% 80%
")有谁有什么想法吗?
提前谢谢你。
发布于 2020-10-28 04:59:35
一种选择可能是:
colSums(mydata >= 50)/nrow(mydata) * 100
rime point sound
40 70 80 如果你需要它作为一个数据框:
as.data.frame(rbind(colSums(mydata >= 50)/nrow(mydata)))发布于 2020-10-28 06:23:19
一种选择是使用colMeans并乘以100
100 * colMeans(mydata >= 50)
# rime point sound
# 40 70 80 如果它需要是data.frame
as.data.frame.list( 100 * colMeans(mydata >= 50))
# rime point sound
#1 40 70 80https://stackoverflow.com/questions/64562782
复制相似问题