当前位置: 首页 > news >正文

R语言速查表

一、基础操作

(一)帮助系统

操作命令示例说明
查看函数帮助help(sum)?sum获取 sum 函数的详细用法
搜索帮助主题help.search("linear regression")查找与“linear regression”相关的帮助内容
列出所有包含特定字符串的函数apropos("mean")列出名称中含“mean”的函数
启动HTML帮助文档help.start()在浏览器中打开R的HTML帮助文档

(二)工作环境

操作命令示例说明
列出当前环境中的对象ls()显示当前环境中定义的所有对象
以结构化方式列出对象ls.str()显示对象结构信息
获取当前工作目录getwd()返回当前工作目录路径
设置工作目录setwd("C:/your/directory")将工作目录设置为指定路径
退出Rquit()q()退出R环境,可选择是否保存工作空间

(三)包管理

操作命令示例说明
安装包install.packages("dplyr")从CRAN安装“dplyr”包
更新包update.packages()更新已安装的包
加载包library(dplyr)require(dplyr)加载“dplyr”包到当前会话
查看包帮助library(help = "dplyr")查看“dplyr”包的帮助文档

二、数据输入输出

(一)文件读取

文件类型命令示例说明
CSV文件read.csv("data.csv", header = TRUE)读取CSV文件,header = TRUE 表示第一行是列名
表格分隔文件read.delim("data.tsv", header = TRUE)读取以制表符分隔的文件
固定宽度文件read.fwf("data.txt", widths = c(5, 10, 8), header = FALSE)按指定宽度读取文件
从剪贴板读取read.delim("clipboard")从剪贴板读取数据,数据格式需符合要求

(二)文件保存

操作命令示例说明
保存对象save(my_object, file = "my_data.RData")将对象my_object保存到文件
保存工作空间save.image("workspace.RData")保存整个工作空间到文件
写入表格数据write.table(my_df, file = "output.txt", row.names = FALSE, col.names = TRUE, sep = "\t")将数据框写入文件,设置行列名及分隔符
重定向输出到文件sink("output.txt")
print("Hello, R!")
sink()
将输出内容保存到文件,结束后关闭

三、数据结构

(一)向量

操作命令示例说明
创建向量numeric_vector <- c(1, 2, 3, 4)
character_vector <- c("a", "b", "c")
连接元素创建向量
生成序列1:5
seq(1, 10, by = 2)
生成整数序列,按指定步长生成序列
重复向量rep(1, times = 5)
rep(c(1, 2), each = 3)
重复向量元素,按指定次数重复向量
索引向量numeric_vector[3]
numeric_vector[-2]
numeric_vector[numeric_vector > 2]
获取指定位置元素,排除指定位置元素,按条件筛选元素
命名向量named_vector <- c(a = 1, b = 2, c = 3)
named_vector["b"]
创建命名向量,通过名称获取元素

(二)矩阵

操作命令示例说明
创建矩阵matrix_data <- matrix(c(1, 2, 3, 4), nrow = 2, ncol = 2)按指定行数和列数创建矩阵
矩阵索引matrix_data[1, 2]
matrix_data[1, ]
matrix_data[, 2]
获取指定行列元素,获取指定行所有元素,获取指定列所有元素
矩阵转置t(matrix_data)对矩阵进行转置操作
计算矩阵行和、列和rowSums(matrix_data)
colSums(matrix_data)
计算矩阵每行元素之和,计算矩阵每列元素之和

(三)数据框

操作命令示例说明
创建数据框my_df <- data.frame(name = c("Alice", "Bob"), age = c(25, 30), gender = c("F", "M"))按列创建数据框
索引数据框my_df[2, ]
my_df[, "age"]
my_df$name
获取指定行数据,获取指定列数据,通过列名获取列数据
添加列my_df$city <- c("New York", "London")在数据框中添加新列
合并数据框merged_df <- merge(df1, df2, by = "id")按指定列合并两个数据框

(四)列表

操作命令示例说明
创建列表my_list <- list(name = "John", age = 30, hobbies = c("reading", "swimming"))创建包含不同类型元素的列表
索引列表my_list[[2]]
my_list[["hobbies"]]
my_list$age
获取指定位置元素,通过名称获取元素,通过$符号获取元素
添加元素my_list$job <- "Engineer"在列表中添加新元素

四、数据处理与统计

(一)描述性统计

操作命令示例说明
计算均值mean(numeric_vector)计算向量的均值
计算中位数median(numeric_vector)计算向量的中位数
计算标准差sd(numeric_vector)计算向量的标准差
计算方差var(numeric_vector)计算向量的方差
计算总和sum(numeric_vector)计算向量所有元素的总和
计算最小值、最大值min(numeric_vector)
max(numeric_vector)
计算向量的最小值、最大值
计算范围range(numeric_vector)返回向量的最小值和最大值组成的向量
计算分位数quantile(numeric_vector, probs = c(0.25, 0.75))计算指定分位数的值
计算四分位数间距IQR(numeric_vector)计算四分位数间距
计算加权均值weighted.mean(numeric_vector, weights = c(1, 2, 1, 2))计算加权均值

(二)数据转换

操作命令示例说明
排序sorted_vector <- sort(numeric_vector)
sorted_df <- my_df[order(my_df$age), ]
对向量进行排序,对数据框按指定列排序
去重unique_vector <- unique(numeric_vector)获取向量中的唯一值
分箱binned_vector <- cut(numeric_vector, breaks = c(0, 2, 4, 6))将数据划分为不同区间
标准化scaled_vector <- scale(numeric_vector)对数据进行标准化处理
缺失值处理na_removed_vector <- na.omit(numeric_vector)
na_filled_vector <- ifelse(is.na(numeric_vector), 0, numeric_vector)
删除含有缺失值的元素,用指定值填充缺失值

(三)统计检验与模型

操作命令示例说明
t检验t.test(numeric_vector1, numeric_vector2)对两个向量进行t检验
卡方检验chisq.test(observed_data)进行卡方检验
线性回归lm_model <- lm(weight ~ height, data = my_df)拟合线性回归模型
广义线性模型glm_model <- glm(species ~ ., data = iris, family = "binomial")拟合广义线性模型
聚类分析 - Kmeanskmeans_result <- kmeans(scale(iris[, 1:4]), centers = 3)对数据进行Kmeans聚类
聚类分析 - 层次聚类d <- dist(iris[, 1:4])
hclust_result <- hclust(d, method = "complete")
进行层次聚类分析
主成分分析pca_result <- prcomp(iris[, 1:4])对数据进行主成分分析

五、数据可视化

(一)基础绘图

操作命令示例说明
散点图plot(x = numeric_vector1, y = numeric_vector2, main = "Scatter Plot", xlab = "X Axis", ylab = "Y Axis")绘制散点图
直方图hist(numeric_vector, main = "Histogram", xlab = "Value", col = "blue")绘制直方图
箱线图boxplot(numeric_vector, main = "Box Plot", ylab = "Value")绘制箱线图
折线图plot(x = 1:length(numeric_vector), y = numeric_vector, type = "l", main = "Line Plot", xlab = "Index", ylab = "Value")绘制折线图
条形图barplot(numeric_vector, main = "Bar Plot", xlab = "Category", ylab = "Value", horiz = FALSE)绘制条形图
饼图pie(numeric_vector, labels = c("A", "B", "C"), main = "Pie Chart")绘制饼图

(二)高级绘图

操作命令示例说明
三维图 - 表面图library(rgl)
x <- y <- seq(-2, 2, length = 50)
z <- outer(x, y, function(x, y) x^2 + y^2)
surface3d(x, y, z)
绘制三维表面图
三维图 - 散点图library(rgl)
x <- rnorm(100)
y <- rnorm(100)
z <- rnorm(100)
points3d(x, y, z)
绘制三维散点图
等高线图contour(x = numeric_vector1, y = numeric_vector2, z = matrix_data, main = "Contour Plot")绘制等高线图
热力图library(ggplot2)
ggplot(data = my_df, aes(x = variable1, y = variable2, fill = value)) + geom_tile()
绘制热力图
交互图 - 散点图矩阵pairs(iris[, 1:4], main = "Scatter Plot Matrix")绘制散点图矩阵
交互图 - 箱线图分组library(ggplot2)
ggplot(data = iris, aes(x = Species, y = Sepal.Length)) + geom_boxplot()
按分组绘制箱线图

(三)图形参数设置

操作命令示例说明
设置标题、坐标轴标签plot(x, y, main = "My Plot", xlab = "X Label", ylab = "Y Label")设置图形标题和坐标轴标签
设置颜色plot(x, y, col = "red")
hist(numeric_vector, col = rainbow(5))
设置绘图颜色,使用彩虹色
设置线型plot(x, y, type = "l", lty = 2)设置线条类型(如虚线)
设置点形状plot(x, y, pch = 16)设置点的形状(如实心圆)
设置坐标轴范围plot(x, y, xlim = c(0, 10), ylim = c(0, 20))设置坐标轴的取值范围
添加图例plot(x, y, col = c("red", "blue"), pch = c(1, 2))
legend("topright", legend = c("Group 1", "Group 2"), col = c("red", "blue"), pch = c(1, 2))
添加图例说明图形元素

六、编程基础

(一)函数定义与使用

操作命令示例说明
定义函数add_numbers <- function(a, b) { <br> return(a + b) <br> }定义一个简单的加法函数
调用函数result <- add_numbers(3, 5)调用函数并返回结果
匿名函数sapply(numeric_vector, function(x) x^2)使用匿名函数对向量元素进行平方操作

(二)控制流

操作命令示例说明
条件判断if (x > 10) { <br> print("x is greater than 10") <br> } else { <br> print("x is less than or equal to 10") <br> }根据条件执行不同代码块
循环 - for循环for (i in 1:5) { <br> print(i) <br> }按指定次数循环执行代码块
循环 - while循环i <- 1 <br> while (i <= 5) { <br> print(i) <br> i <- i + 1 <br> }当条件满足时持续循环
循环 - repeat循环i <- 1 <br> repeat { <br> print(i) <br> if (i == 5) { <br> break <br> } <br> i <- i + 1 <br> }无限循环,可通过break语句跳出
跳过循环迭代for (i in 1:5) { <br> if (i == 3) { <br> next <br> } <br> print(i) <br> }跳过指定迭代

(三)向量化操作

操作命令示例说明
向量运算numeric_vector1 <- c(1, 2, 3)
numeric_vector2 <- c(4, 5, 6)
result_vector <- numeric_vector1 + numeric_vector2
对两个向量对应元素进行加法运算
条件向量化new_vector <- ifelse(numeric_vector > 3, "Large", "Small")根据条件对向量元素进行替换

七、其他实用操作

(一)日期与时间处理

操作命令示例说明
创建日期对象my_date <- as.Date("2024-01-01")创建日期对象
日期格式化format(my_date, "%Y-%m-%d")将日期格式化为指定字符串
日期运算new_date <- my_date + 30日期加上指定天数
获取日期的年、月、日year <- format(my_date, "%Y")
month <- format(my_date, "%m")
day <- format(my_date, "%d")
提取日期中的年、月、日

(二)随机数生成

分布类型命令示例说明
正态分布rnorm(10, mean = 0, sd = 1)生成10个均值为0,标准差为1的正态分布随机数
均匀分布runif(10, min = 0, max = 1)生成10个0到1之间的均匀分布随机数
泊松分布rpois(10, lambda = 5)生成10个参数为5的泊松分布随机数
二项分布rbinom(10, size = 10, prob = 0.5)生成10个n为10,p为0.5的二项分布随机数

(三)字符串处理

操作命令示例说明
连接字符串`string1 <- “Hello”
string2 <- “World”
new

相关文章:

  • 【Django】Django DRF 中如何手动调用分页器返回分页数据(APIView,action场景)
  • Windows系统编译GSL与VS2022联合编程
  • 从零基础到最佳实践:Vue.js 系列(3/10):《组件化开发入门》
  • 链表day3
  • 【初识】内网渗透——基础概念,基本工具使用
  • 远程访问家里的路由器:异地访问内网设备或指定端口网址
  • Go语言中new与make的深度解析
  • 第二章:Android常用UI控件
  • 数据库blog4_数据库软件的设计方法与实际架构
  • 安全可控的AI底座:灯塔大模型应用开发平台全面实现国产信创兼容适配认证
  • VRRP 协议
  • 使用vue2做一个生成二维码的案例【可当组件使用】
  • 结课作业01. 用户空间 MPU6050 体感鼠标驱动程序
  • 【图像大模型】基于深度对抗网络的图像超分辨率重建技术ESRGAN深度解析
  • Mac安装redis
  • 万物智联,重塑未来:鸿蒙操作系统的实战突破与生态崛起
  • VUE3+TS实现图片缩放移动弹窗
  • Docker安装MinIO对象存储中间件
  • 基于Browser Use + Playwright 实现AI Agent操作Web UI自动化
  • 面向未来,遨游推出5G-A智能防爆对讲机等系列终端
  • 慢慢网站建设/seo关键词排名优化方案
  • 做纸贸易的好网站/百度网游排行榜
  • 政府网站建设思路汇报/百度app下载安装官方免费下载
  • 国内适合个人做外贸的网站有哪些/360seo关键词优化
  • 长沙网站开发长沙网站建设/在线种子资源网
  • 成功英语网站/搜索引擎平台排名