推荐答案
在 R 语言中,dplyr 包是一个非常强大的数据处理工具,它提供了一系列简洁且高效的函数来处理数据框。以下是使用 dplyr 包进行数据处理的常见操作:
// www.javascriptcn.com code example
# 加载 dplyr 包
library(dplyr)
# 示例数据框
df <- data.frame(
id = 1:5,
name = c("Alice", "Bob", "Charlie", "David", "Eve"),
age = c(25, 30, 35, 40, 45),
salary = c(50000, 60000, 70000, 80000, 90000)
)
# 1. 选择列
selected_df <- df %>%
select(id, name, age)
# 2. 过滤行
filtered_df <- df %>%
filter(age > 30)
# 3. 添加新列
mutated_df <- df %>%
mutate(salary_increase = salary * 1.1)
# 4. 排序
sorted_df <- df %>%
arrange(desc(salary))
# 5. 分组并汇总
grouped_df <- df %>%
group_by(age) %>%
summarise(avg_salary = mean(salary))
# 6. 连接数据框
df2 <- data.frame(
id = 1:5,
department = c("HR", "IT", "Finance", "Marketing", "Sales")
)
joined_df <- df %>%
left_join(df2, by = "id")本题详细解读
1. 选择列 (select)
select 函数用于选择数据框中的特定列。在上面的例子中,我们选择了 id、name 和 age 列。
2. 过滤行 (filter)
filter 函数用于根据条件过滤数据框中的行。在上面的例子中,我们过滤出了 age 大于 30 的行。
3. 添加新列 (mutate)
mutate 函数用于在数据框中添加新列。在上面的例子中,我们添加了一个新列 salary_increase,它是 salary 列的 1.1 倍。
4. 排序 (arrange)
arrange 函数用于对数据框中的行进行排序。在上面的例子中,我们按照 salary 列进行降序排序。
5. 分组并汇总 (group_by 和 summarise)
group_by 函数用于对数据框进行分组,summarise 函数用于对分组后的数据进行汇总。在上面的例子中,我们按照 age 列进行分组,并计算了每个年龄组的平均工资。
6. 连接数据框 (left_join)
left_join 函数用于将两个数据框按照指定的列进行连接。在上面的例子中,我们将 df 和 df2 按照 id 列进行左连接。
通过这些操作,dplyr 包可以非常方便地进行数据处理和分析。