R语言 异质数据
数据结构是一种逻辑性的方式,或者说是根据需求来表示。它们进一步帮助在计算机内存中描述这种逻辑视图。在R语言中,数据结构可以分为两组,即同质和异质。
- 同质数据结构: 这种类型只能存储单一类型的数据(整数、字符等)。
- 异质数据结构: 这种类型可以同时存储一种以上的数据类型。
异质数据结构
R支持两种表示异质数据的方式,即列表和数据框架。下面将详细讨论这两种结构。
1) 列表 :
- 列表是单维的异构数据类型。
- 一个列表可以同时代表一个以上的数据类型。
- 我们可以简单地使用 list() 函数来创建一个列表。
- 列表类似于向量,然而,向量是同质的,而列表是异质的。
- 列表的另一个有趣的特性是我们可以将列表存储在其他列表中(就像简单的递归)。由于这个原因,列表也被称为 “递归向量 “。
例子
list_ex = list(Ch="R language", numbers = 5:1, fl=FALSE)
print(list_ex)
输出
$Ch
[1] “R language”
$numbers
[1] 5 4 3 2 1
$fl
[1] FALSE
例子: 递归向量
list_ex2<-list(list(1,"R language",FALSE), list("Python",2,"Language"),
list("Hello",FALSE,"World"))
str(list_ex2)
输出
List of 3
:List of 3
.. : num 1
..: chr “R language”
.. : logi FALSE
:List of 3
.. : chr “Python”
..: num 2
.. : chr “Language”
:List of 3
.. : chr “Hello”
..: logi FALSE
.. : chr “World”
2)数据框架
- 在R语言中,数据框是一个二维的异质表状结构
- 它们只是具有相同长度的向量列表。
- 当数据帧被系统地使用时,它们会使数据分析更加容易。
- 在R语言中,我们使用 data.frames() 函数来创建数据框。
- R语言中的数据框架必须遵循以下规则。
- 一个数据框架必须有 列名 ,每一列必须包含 等量的 项目。
- 数据框中的每一行都必须有一个 唯一的名字。
- 一列中的每个条目必须有 相同的数据类型。
- 不同的列可以有相同或不同的 数据类型。
例子
employee_id <- c(1:4)
employee_name <- c("Abdul", "Anshul", "Vishal", "Riya")
employee_salary <- c("45000", "90000", "25000", "75000")
employee_designation <- c("Software Engineer", "Senior Manager", "Intern","Manager")
employee.data <- data.frame(employee_id , employee_name, employee_salary,
employee_designation)
employee.data
输出