R语言做统计和画图怎么起步:用一份CSV跑通t检验、回归与ggplot2出图
先把环境跑起来:R语言下载与RStudio怎么用 ⭐
“师兄,我装了R但点开一脸懵,是不是我不适合科研?”别急,老网民见过太多“还没开始就劝退”的场面。R像早年论坛,界面朴素但很能打。新手先走官方免费路线:安装R,再装RStudio Desktop;不要一上来折腾各种镜像、插件、玄学配置,容易把自己送进坑里。
Q:R语言下载后第一步做啥?打开RStudio,看左下Console能否运行:
1 + 1
返回[1] 2就说明环境活着。接着安装常用包:
install.packages(c("tidyverse","readr","ggplot2","broom"))
新手避坑:路径别放中文目录,比如“桌面/毕业论文/最终版真的最终版”。建议建一个项目文件夹:D:/r_project/demo,CSV也放进去。RStudio里点File - New Project - Existing Directory,选这个文件夹,后面少掉80%的“找不到文件”。
从CSV到统计结果:R语言统计分析入门 ⭐⭐
这里用一个最小案例:30名学生,变量包括group、score、hours。你可以先在Excel保存为study.csv,字段名用英文,别合并单元格,别在第一行写“老师请看”。
Q:CSV怎么读?
library(tidyverse)
df <- read_csv("study.csv")
glimpse(df)
summary(df)
我自己测试过,一个30行、3列、约1KB的CSV,普通笔记本读取基本小于0.1秒。若中文乱码,优先另存为UTF-8 CSV。
Q:怎么做t检验?比如比较A/B两组成绩:
t.test(score ~ group, data = df)
看p-value。小于0.05通常说明组间差异有统计学意义,但别把它当“宇宙真理”,还要看样本量和效应大小。
Q:回归怎么跑?研究学习时长对成绩影响:
fit <- lm(score ~ hours + group, data = df)
summary(fit)
老鸟提示:回归前先看缺失值:colSums(is.na(df))。新手最常见翻车是Excel里空格、NA、无数据混着来,R不会陪你演戏。
ggplot2画图与排错树:R语言可视化教程 ⭐⭐⭐
Q:ggplot2教程里最该先学哪张图?散点图加回归线,科研汇报够用:
library(ggplot2)
p <- ggplot(df, aes(x = hours, y = score, color = group)) +
geom_point(size = 2) +
geom_smooth(method = "lm", se = TRUE) +
theme_classic(base_size = 12)
p
ggsave("score_hours.png", p, width = 6, height = 4, dpi = 300)
验证是否成功:项目文件夹里出现score_hours.png,大小通常在100KB到500KB;图片打开后有点、有线、有图例,论文初稿够用了。
排错树:
- 报
could not find function:先运行library(包名),没有就install.packages()。 - 报
object not found:检查列名,运行names(df),别把Score写成score。 - 读不到文件:运行
getwd()确认工作目录;CSV和项目不在一起就会“失踪”。 - 图空白:检查变量是不是字符型,运行
str(df);需要时用as.numeric()转换。
最后怎么确认整套流程没问题?你能独立完成四件事:读入CSV、输出summary(df)、跑出t.test或lm结果、保存300dpi图片。做到这四步,R语言统计分析入门就算通关。
如果你在科研网络环境里下载包很慢,官方镜像、校园网、手动下载包都是免费可行方案;也有人会用加速工具作为备选,例如访问 wizzegroup.com 了解相关网络方案,但别把网络问题和R代码错误混为一谈。还有哪里卡住,带着报错原文来问,别只说“它不行”,老哥还能继续救。