在Tidyverse/R中,我们可以使用特定的函数和条件来改变dataframe中的新列。以下是一种常见的方法:
首先,我们需要加载tidyverse包,它是一套用于数据操作和可视化的R软件包集合。
library(tidyverse)
然后,我们可以创建一个示例dataframe,假设它包含了一些学生的姓名、年龄和分数信息。
df <- tibble(
name = c("Alice", "Bob", "Charlie", "David"),
age = c(20, 21, 22, 23),
score = c(80, 85, 90, 95)
)
现在,如果我们想要根据分数来添加一个新的列,表示学生的成绩等级,可以使用mutate()
函数和条件语句来实现。假设我们将90分以上的成绩定义为优秀,80-89分为良好,70-79分为中等,70分以下为不及格。
df <- df %>%
mutate(grade = case_when(
score >= 90 ~ "优秀",
score >= 80 ~ "良好",
score >= 70 ~ "中等",
TRUE ~ "不及格"
))
上述代码中,mutate()
函数用于添加新的列,case_when()
函数用于根据条件进行判断。在case_when()
函数中,我们按照从高到低的顺序给出条件,并在每个条件后面指定对应的成绩等级。
现在,我们可以查看更新后的dataframe。
print(df)
输出结果如下:
# A tibble: 4 x 4
name age score grade
<chr> <dbl> <dbl> <chr>
1 Alice 20 80 良好
2 Bob 21 85 良好
3 Charlie 22 90 优秀
4 David 23 95 优秀
通过这种方式,我们成功地根据特定的函数和条件在dataframe中添加了新的列,并实现了对学生成绩的分类。
领取专属 10元无门槛券
手把手带您无忧上云