R统计分析基本方法汇总 统计分析常用术语
bigegpt 2024-10-30 01:48 11 浏览
均数与标准差
data <- data.frame(
考生号 = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20),
分数 = c(456, 594, 611, 336, 298, 394, 464, 336, 513, 553, 541, 478, 306, 516, 456, 452, 431, 531, 435, 552)
)
mean_score <- mean(data$分数)
sd_score <- sd(data$分数)
cat("均值:", mean_score, "\n")
cat("标准差:", sd_score, "\n")
均值: 462.65
标准差: 92.40829
统计描述
data <- data.frame(
`编号` = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12),
`身高` = c(125.2, 135.3, 122.9, 131.6, 121.1, 141.5, 132.1, 112.8, 104.6, 131.2, 125.9, 126.1)
)
statistics <- summary(dataR统计分析基本方法汇总-今日头条 身高`)
print(statistics)
Min. 1st Qu. Median Mean 3rd Qu. Max.
104.6 122.5 126.0 125.9 131.7 141.5总体均数估计
# 样本均数
mean_x <- 3.55
# 样本标准差
sd_x <- 1.03
# 总体均数的估计值等于样本均数
estimate <- mean_x
cat("总体均数的估计值为:", estimate)
总体均数的估计值为: 3.55
总体率估计
# 活产新生儿总数
n <- 3009
# 诊断出畸形的新生儿数
k <- 29
# 畸形率
p <- 0.96 / 100
# 计算P(X>=k)的值
prob <- 1 - sum(dbinom(0:k-1, n, p))
cat("该地活产新生儿的畸形率估计值为:", prob * 100)
该地活产新生儿的畸形率估计值为: 51.6608
样本均数与总体均数的比较
# 假设检验
population_mean <- 72 # 总体均数
sample_mean <- 75.5 # 样本均数
sample_std <- 6.5 # 样本标准差
n <- 25 # 样本容量
# 计算t统计量
t_statistic <- (sample_mean - population_mean) / (sample_std / sqrt(n))
# 计算p值
p_value <- 1 - pt(t_statistic, df = n-1)
# 输出结果
if (p_value < 0.05) {
cat("根据t检验,可以认为该山区成年男子的脉搏高于一般人群,p值为", p_value, "\n")
} else {
cat("根据t检验,无法认为该山区成年男子的脉搏高于一般人群,p值为", p_value, "\n")
}
根据t检验,可以认为该山区成年男子的脉搏高于一般人群,p值为 0.006364546
配对设计的两样本均数的比较
# 原始数据
data <- matrix(c(122, 145, 113, 128, 141, 156, 123, 122, 105, 121,
124, 105, 144, 123, 115, 101, 117, 127), ncol = 2)
# 计算差值
diff <- data[, 2] - data[, 1]
# 进行假设检验
result <- t.test(diff)
# 输出结果
if (result$p.value < 0.05) {
cat("根据t检验,药物治疗前后血红蛋白含量有显著变化,p值为", result$p.value, "\n")
} else {
cat("根据t检验,药物治疗前后血红蛋白含量没有显著变化,p值为", result$p.value, "\n")
}
根据t检验,药物治疗前后血红蛋白含量没有显著变化,p值为 0.2220104
两个样本均数比较(成组设计)
# 实验组数据
experimental_group <- c(122, 113, 141, 123, 105, 124, 144, 115, 117)
# 对照组数据
control_group <- c(148, 129, 156, 122, 121, 105, 123, 100, 126)
# 假设检验
result <- t.test(experimental_group, control_group)
# 输出结果
if (result$p.value < 0.05) {
cat("根据独立两样本t检验,可以认为该药物对血红蛋白含量有影响,p值为", result$p.value, "\n")
} else {
cat("根据独立两样本t检验,无法认为该药物对血红蛋白含量有影响,p值为", result$p.value, "\n")
}
根据独立两样本t检验,无法认为该药物对血红蛋白含量有影响,p值为 0.6985076
多个样本均数比较(成组设计)
# A药组数据
group_a <- c(122, 113, 141, 123, 105)
# B药组数据
group_b <- c(144, 126, 156, 122, 121)
# 对照组数据
control_group <- c(101, 111, 113, 100, 101)
# 单因素方差分析
result <- aov(c(group_a, group_b, control_group) ~ c(rep("A", 5), rep("B", 5), rep("C", 5)))
result
Call:
aov(formula = c(group_a, group_b, control_group) ~ c(rep("A",
5), rep("B", 5), rep("C", 5)))
Terms:
c(rep("A", 5), rep("B", 5), rep("C", 5)) Residuals
Sum of Squares 2050.533 1842.400
Deg. of Freedom 2 12
Residual standard error: 12.39086
Estimated effects may be unbalanced
Sum of Squares:平方和,表示每个效应和残差的平方和。 Deg. of Freedom:自由度,表示每个效应和残差的自由度。 Residual standard error:残差标准误差,表示观测值与拟合值之间的离散程度。
配伍组设计多个样本均数比较
# 创建数据框
data <- data.frame(
Group = rep(c("A", "B", "C"), each = 5),
Value = c(122, 113, 141, 123, 105, 144, 126, 156, 122, 121, 103, 110, 115, 100, 101)
)
# 执行单因素方差分析
result <- aov(Value ~ Group, data = data)
# 打印方差分析结果
print(summary(result))
Df Sum Sq Mean Sq F value Pr(>F)
Group 2 1963 981.7 6.359 0.0131 *
Residuals 12 1852 154.4
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
样本率与总体率的比较
# 定义总样本数和发生出血症状的样本数
n1 <- 245 # 总样本数
x1 <- 75 # 发生出血症状的样本数
# 定义比例
p0 <- 0.2 # 一般溃疡病患者中的出血发生率
# 执行比例检验
result <- prop.test(x1, n1, p = p0)
# 打印检验结果
print(result)
1-sample proportions test with continuity correction
data: x1 out of n1, null probability p0
X-squared = 16.588, df = 1, p-value = 4.644e-05
alternative hypothesis: true p is not equal to 0.2
95 percent confidence interval:
0.2498702 0.3685703
sample estimates:
p
0.3061224
完全随机设计两个样本率的比较(四格表资料)
# 创建观察矩阵
observed <- matrix(c(60, 48, 4, 16), nrow = 2, byrow = TRUE)
# 执行卡方检验
result <- chisq.test(observed)
# 打印检验结果
print(result)
Pearson's Chi-squared test with Yates' continuity correction
data: observed
X-squared = 7.1704, df = 1, p-value = 0.007412
多个样本率的比较
# 创建观察矩阵
observed <- matrix(c(19, 41, 24, 11, 9, 1), nrow = 3, byrow = TRUE)
# 执行卡方检验
result <- chisq.test(observed)
# 打印检验结果
print(result)
Warning message in chisq.test(observed):
"Chi-squared approximation may be incorrect"
Pearson's Chi-squared test
data: observed
X-squared = 19.287, df = 2, p-value = 6.483e-05
单向有序分类资料的假设检验
# 创建观察矩阵
observed <- matrix(c(26, 12, 23, 15, 10, 21, 1, 12), nrow = 2, byrow = TRUE)
# 执行卡方检验
result <- chisq.test(observed)
# 打印检验结果
print(result)
Pearson's Chi-squared test
data: observed
X-squared = 23.181, df = 3, p-value = 3.703e-05
# 创建观察矩阵
observed <- matrix(c(12, 11, 10, 5, 22, 12, 34, 2, 34, 32, 23, 23, 22, 2, 1, 3), nrow = 4, byrow = TRUE)
# 执行卡方检验
result <- chisq.test(observed)
# 打印检验结果
print(result)
Warning message in chisq.test(observed):
"Chi-squared approximation may be incorrect"
Pearson's Chi-squared test
data: observed
X-squared = 51.24, df = 9, p-value = 6.29e-08
相关分析
# 创建年龄和身高的向量
age <- c(6.2, 7.0, 10.2, 11.0, 12.1, 9.5, 8.2, 6.5)
height <- c(135, 139, 143, 150, 155, 141, 140, 137)
# 计算Pearson相关系数
result <- cor.test(age, height, method = "pearson")
# 打印结果
print(result)
Pearson's product-moment correlation
data: age and height
t = 6.5021, df = 6, p-value = 0.0006301
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.6786457 0.9885741
sample estimates:
cor
0.9357982
回归分析
# 创建年龄和身高的向量
age <- c(6.2, 7.0, 10.2, 11.0, 12.1, 9.5, 8.2, 6.5)
height <- c(135, 139, 143, 150, 155, 141, 140, 137)
# 拟合线性回归模型
model <- lm(height ~ age)
# 打印回归结果
print(summary(model))
# 输出回归方程
b0 <- coef(model)[1]
b1 <- coef(model)[2]
cat("regression equation: y = ", b0, " + ", b1, "x", sep="")
Call:
lm(formula = height ~ age)
Residuals:
Min 1Q Median 3Q Max
-3.4221 -1.3504 0.6605 1.4036 3.1086
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 117.0605 4.0170 29.141 1.08e-07 ***
age 2.8786 0.4427 6.502 0.00063 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 2.575 on 6 degrees of freedom
Multiple R-squared: 0.8757, Adjusted R-squared: 0.855
F-statistic: 42.28 on 1 and 6 DF, p-value: 0.0006301
regression equation: y = 117.0605 + 2.878581x
生存分析
library(survival)
# 创建数据向量
a <- c(200, 155, Inf, Inf, 300, 166, 215, 312, Inf, 213, 166, 222)
b <- c(135, 139, Inf, 143, 150, 155, 141, Inf, 140, 137)
# 创建生存对象
surv_a <- Surv(a, rep(1, length(a)))
surv_b <- Surv(b, rep(1, length(b)))
# 创建Kaplan-Meier生存曲线对象并拟合数据
kmf_a <- survfit(surv_a ~ 1)
kmf_b <- survfit(surv_b ~ 1)
# 绘制Kaplan-Meier曲线
plot(kmf_a, col='red', main='Survival Curve of A and B Groups')
lines(kmf_b, col='blue')
legend('bottomleft', legend=c('A方案', 'B方案'), col=c('red', 'blue'), lty=1)
civilpy:Python数据分析及可视化实例目录929 赞同 · 36 评论文章
相关推荐
- 悠悠万事,吃饭为大(悠悠万事吃饭为大,什么意思)
-
新媒体编辑:杜岷赵蕾初审:程秀娟审核:汤小俊审签:周星...
- 高铁扒门事件升级版!婚宴上‘冲喜’老人团:我们抢的是社会资源
-
凌晨两点改方案时,突然收到婚庆团队发来的视频——胶东某酒店宴会厅,三个穿大红棉袄的中年妇女跟敢死队似的往前冲,眼瞅着就要扑到新娘的高额钻石项链上。要不是门口小伙及时阻拦,这婚礼造型团队熬了三个月的方案...
- 微服务架构实战:商家管理后台与sso设计,SSO客户端设计
-
SSO客户端设计下面通过模块merchant-security对SSO客户端安全认证部分的实现进行封装,以便各个接入SSO的客户端应用进行引用。安全认证的项目管理配置SSO客户端安全认证的项目管理使...
- 还在为 Spring Boot 配置类加载机制困惑?一文为你彻底解惑
-
在当今微服务架构盛行、项目复杂度不断攀升的开发环境下,SpringBoot作为Java后端开发的主流框架,无疑是我们手中的得力武器。然而,当我们在享受其自动配置带来的便捷时,是否曾被配置类加载...
- Seata源码—6.Seata AT模式的数据源代理二
-
大纲1.Seata的Resource资源接口源码2.Seata数据源连接池代理的实现源码3.Client向Server发起注册RM的源码4.Client向Server注册RM时的交互源码5.数据源连接...
- 30分钟了解K8S(30分钟了解微积分)
-
微服务演进方向o面向分布式设计(Distribution):容器、微服务、API驱动的开发;o面向配置设计(Configuration):一个镜像,多个环境配置;o面向韧性设计(Resista...
- SpringBoot条件化配置(@Conditional)全面解析与实战指南
-
一、条件化配置基础概念1.1什么是条件化配置条件化配置是Spring框架提供的一种基于特定条件来决定是否注册Bean或加载配置的机制。在SpringBoot中,这一机制通过@Conditional...
- 一招解决所有依赖冲突(克服依赖)
-
背景介绍最近遇到了这样一个问题,我们有一个jar包common-tool,作为基础工具包,被各个项目在引用。突然某一天发现日志很多报错。一看是NoSuchMethodError,意思是Dis...
- 你读过Mybatis的源码?说说它用到了几种设计模式
-
学习设计模式时,很多人都有类似的困扰——明明概念背得滚瓜烂熟,一到写代码就完全想不起来怎么用。就像学了一堆游泳技巧,却从没下过水实践,很难真正掌握。其实理解一个知识点,就像看立体模型,单角度观察总...
- golang对接阿里云私有Bucket上传图片、授权访问图片
-
1、为什么要设置私有bucket公共读写:互联网上任何用户都可以对该Bucket内的文件进行访问,并且向该Bucket写入数据。这有可能造成您数据的外泄以及费用激增,若被人恶意写入违法信息还可...
- spring中的资源的加载(spring加载原理)
-
最近在网上看到有人问@ContextConfiguration("classpath:/bean.xml")中除了classpath这种还有其他的写法么,看他的意思是想从本地文件...
- Android资源使用(android资源文件)
-
Android资源管理机制在Android的开发中,需要使用到各式各样的资源,这些资源往往是一些静态资源,比如位图,颜色,布局定义,用户界面使用到的字符串,动画等。这些资源统统放在项目的res/独立子...
- 如何深度理解mybatis?(如何深度理解康乐服务质量管理的5个维度)
-
深度自定义mybatis回顾mybatis的操作的核心步骤编写核心类SqlSessionFacotryBuild进行解析配置文件深度分析解析SqlSessionFacotryBuild干的核心工作编写...
- @Autowired与@Resource原理知识点详解
-
springIOCAOP的不多做赘述了,说下IOC:SpringIOC解决的是对象管理和对象依赖的问题,IOC容器可以理解为一个对象工厂,我们都把该对象交给工厂,工厂管理这些对象的创建以及依赖关系...
- java的redis连接工具篇(java redis client)
-
在Java里,有不少用于连接Redis的工具,下面为你介绍一些主流的工具及其特点:JedisJedis是Redis官方推荐的Java连接工具,它提供了全面的Redis命令支持,且...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- resize函数 (64)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- mybatis大于等于 (64)
- xcode-select (66)
- mysql授权 (74)
- 下载测试 (70)
- linuxlink (65)
- pythonwget (67)
- androidinclude (65)
- logstashinput (65)
- hadoop端口 (65)
- vue阻止冒泡 (67)
- oracle时间戳转换日期 (64)
- jquery跨域 (68)
- php写入文件 (73)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)