R:如何将(上次)列名作为值复制到新列?

R:如何将(上次)列名作为值复制到新列?,r,R,简而言之,我需要创建带有时间戳的新列,从另一个列名中提取时间戳 因此,我已经使用此命令从数据集中选择以下列:Lat、Long、last\u col() 我使用last(col),因为列名(日期)正在更改 data_new <- data %>% select(Lat, Long_, last_col() ) 我的目标是实现以下结果: "Lat","Long_","date","Value" -14.271,-170.132,"5/26/20",44 13.4443,144.79

简而言之,我需要创建带有时间戳的新列,从另一个列名中提取时间戳

因此,我已经使用此命令从数据集中选择以下列:
Lat、Long、last\u col()
我使用last(col),因为列名(日期)正在更改

data_new <- data %>%
  select(Lat, Long_, last_col() )
我的目标是实现以下结果:

"Lat","Long_","date","Value"
-14.271,-170.132,"5/26/20",44
13.4443,144.7937,"5/26/20",167

有什么想法吗?

我们可以使用
变异

library(dplyr)
data_new %>%
     mutate(date = names(.)[3]) %>%
     rename(Value = `5/26/20`)

如果有更多的行,那么无错误的方法是
pivot\u更长

library(tidyr)
pivot_longer(data_new, cols = -c(Lat:Long_), names_to = 'date')
library(tidyr)
pivot_longer(data_new, cols = -c(Lat:Long_), names_to = 'date')