长数据如下图:

宽数据如下图:

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')
							
								