R语言描述统计(数值方法)

编程入门 行业动态 更新时间:2024-10-24 03:21:28

R语言描述统计(<a href=https://www.elefans.com/category/jswz/34/1770286.html style=数值方法)"/>

R语言描述统计(数值方法)

R语言描述统计

  • 前言
  • 连续型变量均值计算
      • 自编函数进行均值和五数计算
      • 自编函数进行均值和标准差计算
    • 使用R自带包进行均值计算
      • Hmisc包
      • psych 包
      • tableone包
    • 分类变量
      • R自带函数
      • gmodels包

前言

描述统计(Descriptive statistics)是描述总结观察对象的基本特征的统计方法的总称。数值方法指利用数据进行观察量位置,离散程度的描述。

连续型变量均值计算

自编函数进行均值和五数计算

function(x,na.omit=FALSE){if(na.omit)x <- x[!is.na(x)]m <- mean(x)sd <- sd(x)min <- min(x)max <- max(x)Q <- quantile(x)return(c(mean=m,std=sd,min=min,max=max,quantile=Q))
}
attach(df)
stata <- c("X","Y","D")	#写入需要进行计算的变量
outcome <- sapply(df[stata],describestat)
detach(df)

自编函数进行均值和标准差计算

function(x,parametric=TRUE,print=FALSE){if(parametric){center <- mean(x);spread <- sd(x)}else{center <- median(x);spread <- mad(x)}if(print & parametric){cat("Median=",center,"\n","MAD=",spread,"\n")}result <- list(center=center,spread=spread)return(result)
}

使用R自带包进行均值计算

Hmisc包

describe()1计算描述统计量

library(Hmisc)
Var <- c("mpg")
describe(mtcars[Var])
mtcars[Var] # 1  Variable      32  Observations
# ----------------------------------------------------------
#     mpg 
# n  missing distinct     Info     Mean      Gmd 
# 32        0       25    0.999    20.09    6.796 
# .05      .10      .25      .50      .75      .90 
# 12.00    14.34    15.43    19.20    22.80    30.09 
# .95 
# 31.30 
# 
# lowest : 10.4 13.3 14.3 14.7 15.0, highest: 26.0 27.3 30.4 32.4 33.9
# ----------------------------------------------------------

psych 包

psych::describe()演示如下

psych::describe(test)
# 结果展示如下vars  n  mean   sd median trimmed  mad min max range
分组                      1 20  1.00 0.00    1.0    1.00 0.00   1   1     0
考生姓名*                 2 20 10.05 5.48   10.5   10.06 6.67   1  19    18
性别*                     3 20  1.55 0.51    2.0    1.56 0.00   1   2     1
年龄                      4 20 24.35 1.27   24.0   24.25 1.48  22  27     5

tableone包

table1可以进行描述,亦可进行分组描述

table1(~ x1+x2+x3|group, data=data,render.continuous=c(.="Mean±SD",.="Median [Min, Max]",.="Median [Q3-Q1]",.="Median[IQR]"))
# group为分组变量table1(~ data$年龄|data$分组, data=data, render.continuous=c(.="Mean±SD",.="Median [Min, Max]",.="Median [Q3-Q1]",.="Median[IQR]"))

结果如下图所示:

分类变量

R自带函数

table()函数,是R语言基础函数,不需要安装程序包

gmodels包

gmodels::CrossTable()函数

CrossTable(data$性别,data$分组,expected = T,format = "SPSS",fisher = T,prop.c = F,prop.t = F,prop.chisq = F)

  1. Robert I. Kabacoff.R语言实战[M].人民邮电出版社:北京,2016:131-136. ↩︎

更多推荐

R语言描述统计(数值方法)

本文发布于:2024-02-12 14:24:26,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1688154.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数值   语言   方法

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!