我知道已经有很多页面重塑的页面,但是我没有找到想要的页面,我的问题有点独特。
我有以下数据集:
df <- data.frame(Year=rep(1:4,4),id=rep(1:4,each=4),key1equals1.key2equals1.key3equals1=1,key1equals2.key2equals1.key3equals1=2,key1equals1.key2equals2.key3equals2=3,key1equals2.key2equals1.key3equals2=4)
基本上,有五个键:Year,id,key1,key2,key3
key1,key2,key3的值都包含在列名称中。
我要关注数据集:
Year id key1 key2 key3 value
如果可能,我想使用基数R。
答案 0 :(得分:1)
从哈德利的答案here中汲取灵感:
library(tidyr)
df %>%
gather(key, value, -Year, -id) %>%
extract(key, c("key1", "key2", "key3"), 'key1equals([0-9])\\.key2equals([0-9])\\.key3equals([0-9])')