📜  R编程数据结构(1)

📅  最后修改于: 2023-12-03 15:34:47.574000             🧑  作者: Mango

R编程数据结构

R语言支持多种数据结构,从简单的向量到复杂的组合型数据集。掌握了这些数据结构,对于编写高效的程序是至关重要的。

向量 (Vector)

向量是R语言中最基础的数据结构。向量是一个有序的变量序列,其中每个变量被称为向量的元素。向量中的所有元素都必须是同一种类型的数据,例如:数值或字符。

创建向量

可以使用c()函数来创建向量。例如,下面的代码创建了一个数值向量。

numeric_vector <- c(1, 2, 3, 4, 5)

也可以创建一个字符向量:

string_vector <- c("apple", "banana", "cherry")

访问向量

要访问向量中的元素,可以使用方括号[]符号,例如:

numeric_vector[1]
# 输出 1

string_vector[3]
# 输出 "cherry"
列表(List)

列表是R中的一种复合数据类型,它允许将不同类型的元素存储在一个对象中。

创建列表

可以使用list()函数创建列表。

a_list <- list("apple", 42, TRUE, 3.14)

这将创建一个名为a_list的列表,其中包含了一个字符、一个整数、一个逻辑值和一个数值。

访问列表

要访问列表中的元素,可以使用方括号[]符号,就像访问向量一样。

a_list[1] 
# 输出 "apple"

a_list[[1]] 
# 输出 "apple"

注意,使用双括号[[]]可以访问列表中单独的元素,而不是以列表的形式返回元素。

矩阵(Matrix)

矩阵是R语言中的二维数组,其中每个元素都有行和列编号。

创建矩阵

可以使用matrix()函数创建矩阵。

matrix_data <- matrix(c(1,2,3,4,5,6), nrow = 2, ncol = 3)

这将创建一个名为matrix_data的矩阵,其中有2行和3列的元素。

访问矩阵

要访问矩阵中的元素,可以使用方括号[]符号,加上行和列的编号。

matrix_data[1,2] 
# 输出 2
数组(Array)

数组是R语言中的多维矩阵。数组中的所有元素都必须是相同的数据类型。

创建数组

可以使用array()函数创建数组。

array_data <- array(c(1,2,3,4,5,6), dim = c(2,3,1))

这将创建一个名为array_data的3维数组,其中有2行、3列和1层的元素。

访问数组

要访问数组中的元素,可以使用方括号[]符号,加上各自的序号。

array_data[1,2,1] 
# 输出 2
数据框(Data Frame)

数据框是R中的一种表格数据结构,其中每列可以包含不同的数据类型。数据框常用于存储实验数据和统计分析数据。

创建数据框

可以使用data.frame()函数创建数据框。

name <- c("Jack", "Jill", "John")
age <- c(25, 30, 42)
married <- c(FALSE, TRUE, TRUE)

data_frame <- data.frame(Name = name, Age = age, Married = married)

这将创建一个名为data_frame的数据框,其中有三列,一列包含字符型数据,一列包含数值型数据,一列包含逻辑型数据。

访问数据框

要访问数据框中的元素,可以使用像矩阵一样的方括号表示法。

data_frame[2,] 
# 输出 "Jill", 30, TRUE

data_frame$Age
# 输出 25, 30, 42

上述代码中,data_frame[2,]访问数据框中的第二行,data_frame$Age访问数据框中的Age列。

因子(Factor)

因子是R中的一种用于离散数据的数据类型。它可以将一组现有的值映射到离散的、有限的值集合。

创建因子

可以使用factor()函数创建因子。

color <- c("red", "green", "blue", "red", "green", "green")
color_factor <- factor(color)

这将创建一个名为color_factor的因子,其中有3种唯一的颜色值:红、绿、蓝。数据向量中的值被映射到这个有限的值集合上。

访问因子

要访问因子中的元素,可以使用像数组或向量一样的方括号表示法。

color_factor[1] 
# 输出 "red"

levels(color_factor)
# 输出 "blue", "green", "red"

上述代码中,color_factor[1]访问因子中的第一个值,levels(color_factor)访问因子中所有可能的值。

结论

这篇文章简要介绍了R语言中的基本数据类型。掌握这些数据结构是成为一名优秀的R程序员的第一步。