如何在 R 中将更宽的 data.frame 重塑为更长的 data.frame?

How to reshape a wider data.frame to longer data.frame in R?

我正在玩 pivot_longerpivot_wider 但可能遗漏了一些东西。我有一个像 D_Wider 这样的 data.frame,我想把它转换成像 D_longer 这样的东西。有什么前进的方向吗?

library(tidyverse)
D_Wider <- data.frame(A = 15, S = 10, D = 25, Z = 16)

期望输出

D_Longer <- data.frame(Stations = c("A","S","D","Z"), Value = c(15,10,25,16))

最简单的是 stack 来自 base R

stack(D_Wider)[2:1]

或使用pivot_longer

library(tidyr)
pivot_longer(D_Wider, cols = everything(), 
     names_to = 'Stations', values_to = 'Value')