赞
踩
在R语言中,对于常用的数据结构:向量、矩阵、数组、数据框和列表,它们在数据处理和分析中各有不同的应用和特点,有时候在理解上会容易搞混,所以打算单独整理下他们的结构对比,用于加深理解
向量是R中最基本的数据结构,可存储相同类型的元素
# 数值型向量
numeric_vector <- c(1, 2, 3, 4, 5)
# 字符型向量
character_vector <- c("Alice", "Bob", "Charlie")
> numeric_vector
[1] 1 2 3 4 5
> character_vector
[1] "Alice" "Bob" "Charlie"
矩阵是由相同数据类型的元素按行列组成的二维数据结构
# 创建一个3行2列的数值型矩阵
numeric_matrix <- matrix(1:6, nrow = 3, ncol = 2)
# 创建一个2行3列的字符型矩阵
character_matrix <- matrix(c("A", "B", "C", "D", "E", "F"), nrow = 2, ncol = 3)
> numeric_matrix
[,1] [,2]
[1,] 1 4
[2,] 2 5
[3,] 3 6
> character_matrix
[,1] [,2] [,3]
[1,] "A" "C" "E"
[2,] "B" "D" "F"
数组是由相同类型的元素组成的多维数据结构
# 创建一个3维数组,每维度为2x2的数值型数组 numeric_array <- array(1:12, dim = c(2, 2, 3)) > numeric_array , , 1 [,1] [,2] [1,] 1 3 [2,] 2 4 , , 2 [,1] [,2] [1,] 5 7 [2,] 6 8 , , 3 [,1] [,2] [1,] 9 11 [2,] 10 12
数据框是R中常用的二维表格型数据结构,类似于数据库中的表格,每列可以是不同类型的数据(例如数值、字符、因子等)
# 创建一个数据框
df <- data.frame(
name = c("Alice", "Bob", "Charlie"),
age = c(25, 30, 28),
gender = c("F", "M", "M")
)
> df
name age gender
1 Alice 25 F
2 Bob 30 M
3 Charlie 28 M
列表是一种复合数据结构,可以包含不同类型的数据对象,每个元素可以是向量、矩阵、数据框或其他列表等
# 创建一个列表 my_list <- list( numeric_vector = c(1, 2, 3), character_vector = c("Alice", "Bob", "Charlie"), numeric_matrix = matrix(1:4, nrow = 2), df = data.frame( name = c("Alice", "Bob"), age = c(25, 30) ) ) > my_list $numeric_vector [1] 1 2 3 $character_vector [1] "Alice" "Bob" "Charlie" $numeric_matrix [,1] [,2] [1,] 1 3 [2,] 2 4 $df name age 1 Alice 25 2 Bob 30
存储内容:
访问方式:
应用场景:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。