Menu
CoddyTech

筛选数据

Coddy R 中的数据处理 课程的第 3 课,共 14 课。

在 R 中,筛选数据是一项重要技能,可以让你提取数据中的特定部分。

subset() 函数提供了一种便捷的方法来筛选数据框。

df <- data.frame(
  name = c("Alice", "Bob", "Charlie"),
  age = c(25, 30, 35),
  city = c("New York", "London", "Paris")
)
# 筛选行
result <- subset(df, age > 28)
print(result)

输出:

  name     age  city
2 Bob      30   London
3 Charlie  35   Paris
# 选取部分列
result <- subset(df, select = c("name", "city"))
print(result)

输出:

     name     city
1    Alice    New York
2    Bob      London
3    Charlie  Paris
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

challenge icon

挑战

简单

你会获得一个包含学生信息的数据框。你的任务是执行以下操作:

  1. 筛选数据框,只保留年龄超过 20 岁的学生。
  2. 从筛选结果中只选择 "name" 和 "score" 列。
  3. 计算并输出这些学生的平均分。
  4. 找出并输出得分最高的学生姓名。

亲手试试

# 读取输入
con <- file("stdin", "r")
input_data <- suppressWarnings(readLines(con))

# 根据输入创建数据框
df <- read.csv(text = input_data, header = TRUE, stringsAsFactors = FALSE)

# TODO: 在下方编写你的代码
# 1. 筛选数据框中年龄大于 20 岁的学生
# 2. 只选择 "name" 和 "score" 列
# 3. 计算平均分
# 4. 找出分数最高的学生

# 输出结果(用你的计算结果更新这些内容)
cat("Average score:", 0, "\n")
cat("Student with highest score:", "", "\n")

R 中的数据处理中的所有课

自己练习: R 在线编译器