ZL1023

V1

2023/01/07阅读:47主题:全栈蓝

R语言:描述性统计分析

一、前言

学术论文中非常重要的一部分内容是 结果与讨论

结果与讨论的第一小节往往是 描述性统计分析

描述性统计分析主要回答以下几个问题:

  1. 数据的集中趋势;
  2. 数据的离散程度;
  3. 数据的分布状态;
  4. 数据有无离群值。

大部分学术论文在结果与讨论的第一小节,一般必须回答前两个问题,即数据的集中趋势数据的离散程度

1.1 示例文献

文献来源
文献来源
原始表格
原始表格

原始文献的表达方式:

  1. 数据的集中趋势:算术平均值,中位数;
  2. 数据的离散程度:标准差,四分位差;
  3. 数据的分布状态:无;
  4. 数据有无离群值:无。

二、R包

本期使用的R包主要有2个。

  • gWQS包:提供示例数据集;
  • dlookr包:进行描述性统计。
# load "tidyverse" package
library(tidyverse)
# load "gWQS" package
library(gWQS)
# load "dlookr" package
library(dlookr)

三、示例数据

示例数据集简介:gWQS包中有一个内置数据集,内置数据集的名称叫wqs_datawqs_data数据集有34种多环芳烃暴露数据、25种邻苯二甲酸酯暴露数据和其他类型数据。

本期仅使用wqs_data数据集的前5种多环芳烃暴露数据性别

# PCBs name
PCBs_name <- c("LBX074LA","LBX099LA","LBX105LA","LBX118LA","LBX138LA")
# get the first 5 PCBs exposure data and sex
PCBs <- wqs_data[c(PCBs_name,"sex")]
# view PCBs data
head(PCBs)

四、描述性统计

本期想要获得的描述性统计量为

  1. 集中趋势:算数平均值,中位数;
  2. 离散趋势:标准差,四分位差;
  3. 分布状态:偏度;
  4. 离群值:本期不讨论。

4.1 R代码实现

PCBs[PCBs_name] %>%
 # use "describe" function from "dlookr" package
  describe(statistics=c("mean","sd","IQR","skewness","quantiles"),
           quantiles=c(0.05,0.25,0.50,0.75,0.95))

4.2 保存至本地

PCBs[PCBs_name] %>%
 # use "describe" function from "dlookr" package
  describe(statistics=c("mean","sd","IQR","skewness","quantiles"),
           quantiles=c(0.05,0.25,0.50,0.75,0.95)) %>% 
 # save statistics results to local
  write.csv(file="describe_statistics.csv")

4.3 分组统计

PCBs %>%
 # group PCBs data by sex
 group_by(sex) %>%
 # use "describe" function from "dlookr" package
  describe(statistics=c("mean","sd","IQR","skewness","quantiles"),
           quantiles=c(0.05,0.25,0.50,0.75,0.95)) %>% 
 # arrange statistics results by sex
 arrange(sex) %>%
 # save statistics results to local
  write.csv(file="group_describe_statistics.csv")

分类:

数学

标签:

数学编程

作者介绍

ZL1023
V1