在某地区抽取120个企业,按利润进行分组,组距为100,生成频数分布表存于文件“习题3.3.xlsx”中”,表头分别为“按利润额分组(万元)”和“企业数(个)”,用R语言根据文件内容计算120个企业利润额的平均数和标准差
时间: 2024-05-15 17:16:12 浏览: 246
读取数据:
```R
library(readxl)
data <- read_excel("习题3.3.xlsx")
```
计算平均数和标准差:
```R
mean_profit <- sum(data$`企业数(个)` * (data$`按利润额分组(万元)` + 50)) / 120
sd_profit <- sqrt(sum(data$`企业数(个)` * (data$`按利润额分组(万元)` + 50)^2) / 120 - mean_profit^2)
```
解释一下计算平均数和标准差的公式:
平均数:根据组距为100,每组的中间值为组界数(最小值加最大值再除以2),则第$i$组的中间值为$50 + 100(i - 1)$,第$i$组内的企业数为$n_i$,则总体平均数为:
$$
\bar{x} = \frac{\sum\limits_{i=1}^{k}n_i \times (50+100(i-1))}{n} = \frac{\sum\limits_{i=1}^{k}n_i \times x_i}{n}
$$
其中,$k$为组数,$n$为样本容量,$x_i$为第$i$组的中间值。
标准差:根据公式$S = \sqrt{\frac{\sum(x_i - \bar{x})^2}{n-1}}$,将$x_i$表示为第$i$组的中间值,则有:
$$
S = \sqrt{\frac{\sum\limits_{i=1}^{k}n_i \times (x_i - \bar{x})^2}{n-1}} = \sqrt{\frac{\sum\limits_{i=1}^{k}n_i \times x_i^2}{n-1} - \bar{x}^2}
$$
其中,$n$为样本容量,$x_i$为第$i$组的中间值。
阅读全文