gpt4 book ai didi

html - r knit html 如何创建一个简单的频率表,就像我们在书本上看到的那样?

转载 作者:可可西里 更新时间:2023-11-01 13:49:41 25 4
gpt4 key购买 nike

我需要创建一个简单的频率表,就像我们在统计书籍上看到的那样。我正在处理这些数据:

Notas <- c(64,78,66,82,74,103,78,86,103,87,73,95,82,89,73,92,85,80,81,90,78,86,78,101,85,98,75,73,90,86,86,84,86,76,76,83,103,86,84,85,76,80,92,102,73,87,70,85,79,93,82,90,83,81,85,72,81,96,81,85,68,96,86,70,72,74,84,99,81,89,71,73,63,105,74,98,78,78,83,96,95,94,88,62,91,83,98,93,83,76)

到目前为止我是这样做的:

library('dplyr')
tabela <- as.data.frame(Notas)
tabela <- tabela %>%
mutate(fr=round(prop.table(Notas),digits=2),
fr_perc = round(prop.table(Notas)*100,digits=2))

但我不敢相信没有更简单的方法,因为它需要付出太多努力。所以我相信我不知道可以以更简单的方式执行此操作的功能。我的预期结果是这样的: A statistical table like the ones from books, with 10 columns

我的主要痛苦是显示第二列并按照它的建议汇总数据。此表将用于统计 101 类学生,然后显示问题的答案,这就是为什么我需要显示所有这些列,因为这是他们可以仔细检查结果的方式。

最佳答案

经过一些尝试,我终于想出了一个解决方案。不漂亮,但它就像一个魅力,所以我用了它。无论如何,如果有人知道更好的解决方案,请随时在此处发布。

library(knitr)
library(dplyr)
Notas <- c(64,78,66,82,74,103,78,86,103,87,73,95,82,89,73,92,85,80,81,90,78,86,78,101,85,98,75,73,90,86,86,84,86,76,76,83,103,86,84,85,76,80,92,102,73,87,70,85,79,93,82,90,83,81,85,72,81,96,81,85,68,96,86,70,72,74,84,99,81,89,71,73,63,105,74,98,78,78,83,96,95,94,88,62,91,83,98,93,83,76)
int_clas <- floor(1+3.3*log10(length(Notas)))
ampl_amos <- ceiling((max(Notas) - min(Notas)) / int_clas)
i <- c(1:int_clas)
tabela <- as.data.frame(i)
base <- array(0,int_clas)
topo <- array(0,int_clas)
notas <- array(0,int_clas)
xi <- array(0,int_clas)
fi <- array(0,int_clas)
Fi <- array(0,int_clas)
Fri <- array(0,int_clas)
Fri_perc <- array(0,int_clas)
for (z in 1:int_clas) {
base[z] <- cbind(min(Notas)+(ampl_amos*(z-1)))
topo[z] <- cbind(min(Notas)+(ampl_amos*z))
notas[z] <- cbind(paste(as.character(base[z])," &rarr; ", as.character(topo[z]), sep = " "))
xi[z] <- cbind(ceiling((base[z]+topo[z])/2))
fi[z] <- cbind(sum(Notas>base[z]-1 & Notas<topo[z]))
Fi[z] <- cbind(sum(fi[1:z]))
}
tabela <- tabela %>%
mutate(notas,xi,fi,xifi=xi*fi,fri=fi/sum(fi),fri_perc=fi/sum(fi)*100,Fi)
for (z in 1:int_clas) {
Fri[z] <- cbind(sum(tabela$fri[1:z]))
Fri_perc[z] <- cbind(sum(tabela$fri_perc[1:z]))
}
tabela <- tabela %>%
mutate(Fri,Fri_perc)
kable(tabela,digits = 2)

“& ra rr;”你可以在代码中看到插入这样一个箭头的 html 代码 (→)。当我将它编织成 html 时,我使用了这段代码。

关于html - r knit html 如何创建一个简单的频率表,就像我们在书本上看到的那样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36719359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com