长数据如下图:
宽数据如下图:
library(magrittr)
library(tidyr)
library(reshape2)
#宽转长
#gather方法
test <- as.data.frame(ddd)
test$year <- rownames(test)
test1 <- gather(test,key="month",value="tempretaure",-year) %>%
.[order(.$year),]
write.table(test1,file="chang_data.txt",sep="\t",quote=F,col.names=T,row.names=F)
#melt方法
test2 <- melt(test,id.vars=c('year'),variable.name='month',value.name='tempretaure') %>%
.[order(.$year),]
#长转宽
#spread方法
kuan_data_1 <- spread(test2,month,tempretaure)
#dcast方法
kuan_data_2 <- dcast(test2,year~test2$month,value.var='tempretaure')