理解数据结构
Coddy R 中的数据处理 课程的第 1 课,共 14 课。
在 R 中,数据结构是组织和处理数据的基础。让我们来了解三种基本数据结构:向量、矩阵和数据框。
1. 向量
向量是一维数组,可以存储相同数据类型的元素。
# 创建数值向量
numbers <- c(1, 2, 3, 4, 5)
# 创建字符向量
fruits <- c("apple", "banana", "cherry")
# 访问元素
print(numbers[2]) # 输出:2
print(fruits[1:2]) # 输出:"apple" "banana"
2. 矩阵
矩阵是由行和列组成的二维数组,其中的元素具有相同的数据类型。
# 创建矩阵
mat <- matrix(1:6, nrow = 2, ncol = 3)
# 访问元素
print(mat[1, 2]) # 返回第 1 行第 2 列的元素(输出:3)
print(mat[, 1]) # 将第 1 列作为向量返回(输出:1 2)
3. 数据框
数据框是类似表格的结构,每列可以存储不同数据类型的数据。
# 创建数据框
df <- data.frame(
name = c("Alice", "Bob", "Charlie"),
age = c(25, 30, 35),
city = c("New York", "London", "Paris")
)
# 访问元素
print(df$name) # 返回名为 "name" 的列(输出:"Alice" "Bob" "Charlie")
print(df[2, "age"]) # 输出:30这节课包含一个小测验。开始学习即可作答,并记录你的进度。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
挑战
简单对数据框执行以下操作:
- 添加一个名为 "height_m" 的新列,将身高从厘米转换为米
- 计算并打印平均年龄
- 打印最高的人的姓名(以米为单位)
亲手试试
# 读取输入
con <- file("stdin", "r")
input_data <- suppressWarnings(readLines(con, n = 3))
# 处理输入数据
data_list <- strsplit(input_data, ",")
names <- sapply(data_list, function(x) x[1])
ages <- as.numeric(sapply(data_list, function(x) x[2]))
heights <- as.numeric(sapply(data_list, function(x) x[3]))
# 创建初始数据框
df <- data.frame(
name = names,
age = ages,
height = heights
)
# TODO:在下方编写你的代码
# 1. 添加新列 'height_m'
# 2. 计算并打印平均年龄
# 3. 打印身高最高的人的姓名(身高以米为单位)
# 输出占位代码
cat("Average age:", avg_age, "\n")
cat("Tallest person:", tallest_person)R 中的数据处理中的所有课
自己练习: R 在线编译器