如何使用 dplyr 转置数据框


您可以使用以下基本语法使用 R 中的dplyr包转置数据框:

 library (dplyr)
library (tidyr)

df %>%
    pivot_wider(names_from = column1, values_from = column2)

Names_from参数指定在转置数据框中用于列名称的值, Values_from参数指定在转置数据框中使用的单元格值。

请注意,管道运算符 ( %>% ) 来自dplyr包,而ivot_wider()函数来自Tidyr包。

以下示例展示了如何在实践中使用此语法。

示例:使用 dplyr 转置数据帧

假设我们在 R 中有以下数据框,其中包含有关各个篮球队的信息:

 #create data frame
df <- data. frame (team=c('Mavs', 'Nets', 'Kings', 'Lakers'),
                 dots=c(99, 104, 119, 113))

#view data frame
df

    team points
1 Mavs 99
2 Nets 104
3 Kings 119
4 Lakers 113

现在假设我们要转置数据框,以便将团队名称用作列名称,将点值用作数据框内的单元格值。

我们可以使用以下语法来做到这一点:

 library (dplyr)
library (tidyr)

#transpose data frame
df %>%
    pivot_wider(names_from = team, values_from = points)

# A tibble: 1 x 4
   Mavs Nets Kings Lakers
      
1 99 104 119 113

数据框已被转置,以便球队名称用作列,点值用作数据框中的单元格值。

请注意,生成的数据框现在包含 1 行和 4 列。

相关: R中pivot_wider()函数简介

其他资源

以下教程解释了如何使用 dplyr 执行其他常见任务:

如何使用 dplyr 过滤包含特定字符串的行
如何使用 dplyr 计算相对频率
如何使用 dplyr 按组选择第一行

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注