R 基础运算

R 基础运算

概述

R 是一种用于统计计算和图形表示的编程语言和软件环境。它广泛应用于数据分析、统计建模、机器学习等领域。R 语言的基础运算包括数值运算、逻辑运算、字符串运算等,是进行复杂数据分析的基础。本文将详细介绍 R 语言的基础运算,帮助读者快速掌握 R 的基本操作。

数值运算

数值运算是 R 语言中最基本的运算类型,包括加、减、乘、除、幂运算等。以下是一些常见的数值运算示例:

R 复制代码
# 加法
a <- 5
b <- 3
sum <- a + b

# 减法
difference <- a - b

# 乘法
product <- a * b

# 除法
quotient <- a / b

# 幂运算
power <- a ^ b

逻辑运算

逻辑运算主要用于比较两个值,并返回逻辑值 TRUEFALSE。R 语言中常用的逻辑运算符包括 &(逻辑与)、|(逻辑或)、!(逻辑非)等。

R 复制代码
# 逻辑与
x <- 5
y <- 3
result_and <- (x > 2) & (y > 2)

# 逻辑或
result_or <- (x > 2) | (y > 2)

# 逻辑非
result_not <- !(x > 2)

字符串运算

R 语言中的字符串运算包括连接、替换、提取等。以下是一些常见的字符串运算示例:

R 复制代码
# 字符串连接
str1 <- "Hello"
str2 <- "World"
str3 <- paste(str1, str2, sep = " ")

# 字符串替换
str4 <- "I love R programming"
str5 <- gsub("R programming", "data analysis", str4)

# 字符串提取
str6 <- "This is a test string"
str7 <- substr(str6, 1, 5)

向量运算

向量是 R 语言中的一种基本数据结构,用于存储一系列有序元素。向量运算包括向量的创建、元素访问、向量操作等。

R 复制代码
# 向量创建
vec <- c(1, 2, 3, 4, 5)

# 元素访问
element <- vec[2]

# 向量操作
vec2 <- vec * 2

数组运算

数组是 R 语言中的一种多维数据结构,用于存储多维数据。数组运算包括数组的创建、元素访问、数组操作等。

R 复制代码
# 数组创建
arr <- matrix(c(1, 2, 3, 4, 5, 6, 7, 8, 9), nrow = 3, ncol = 3, byrow = TRUE)

# 元素访问
element <- arr[2, 3]

# 数组操作
arr2 <- arr + 2

矩阵运算

矩阵是 R 语言中的一种特殊数组,用于存储二维数据。矩阵运算包括矩阵的创建、元素访问、矩阵操作等。

R 复制代码
# 矩阵创建
mat <- matrix(c(1, 2, 3, 4, 5, 6), nrow = 2, ncol = 3, byrow = TRUE)

# 元素访问
element <- mat[1, 2]

# 矩阵操作
mat2 <- mat * 2

数据框运算

数据框是 R 语言中的一种特殊数据结构,用于存储表格数据。数据框运算包括数据框的创建、元素访问、数据框操作等。

R 复制代码
# 数据框创建
df <- data.frame(
  name = c("Alice", "Bob", "Charlie"),
  age = c(25, 30, 35),
  gender = c("Female", "Male", "Male")
)

# 元素访问
element <- df$age[2]

# 数据框操作
df2 <- df[df$age > 28, ]

总结

本文介绍了 R 语言的基础运算,包括数值运算、逻辑运算、字符串运算、向量运算、数组运算、矩阵运算和数据框运算。掌握这些基础运算对于进行 R 语言编程和数据分析至关重要。希望本文能帮助读者快速掌握 R 语言的基础运算,为后续学习打下坚实基础。

相关推荐
Chase_______5 小时前
【Java基础核心知识点全解·01】Java运行机制详解:从 HelloWorld 到 classpath 找类流程
java·开发语言·python
杜子不疼.5 小时前
【C++ AI 大模型接入 SDK】 - LLMProvider 抽象基类与策略模式
开发语言·c++·策略模式
Sylvia-girl5 小时前
R语言概述
开发语言·r语言
Highcharts.js13 小时前
倒置百分比堆叠面积图表示列详解|Highcharts大气成分图表代码
开发语言·信息可视化·highcharts·图表开发·面积图·图表示例·推叠图
csdn_aspnet13 小时前
C语言 Lomuto分区算法(Lomuto Partition Algorithm)
c语言·开发语言·算法
晨曦中的暮雨13 小时前
4.15腾讯 CSIG云服务产线 一面
java·开发语言
存在morning14 小时前
【GO语言开发实践】二 GO 并发快速上手
大数据·开发语言·golang
xiaoerbuyu123315 小时前
开源Java 邮箱 基于SpringBoot+Vue前后端分离的电子邮件
java·开发语言
sparEE16 小时前
c++值类别、右值引用和移动语义
开发语言·c++
zhangjw3416 小时前
第11篇:Java Map集合详解,HashMap底层原理、哈希冲突、JDK1.8优化、遍历方式彻底吃透
java·开发语言·哈希算法