我試圖使用reshape2包在我的數據集的頂部重新分配列。我在三個地點測量了兩次溫度和chl-a。但是,當我融化並投射數據框時,fun.aggregate默認爲長度。我想保留原始值。下面是一個例子的數據集:reshape2播數據幀值
library(reshape2)
library(stringr)
df=data.frame(site=rep(1:3,each=2),temp_2009=c(23,24,25,25,23,43),chla_2009=c(3,2,3,4,5,6),
temp_2010=c(23,25,26,27,23,23),chla_2010=c(2,3,5,6,2,1))
df2=melt(df,id.vars=1,measure.vars=c(2:5))
df2=cbind(df2,data.frame(str_split_fixed(df2$variable,"_",2)))
df2=df2[,-2]
names(df2)[3:4]=c("variable","year")
dcast(df2,site+year~variable)
我覺得這事做reshape2處理重複值的方式。
有什麼想法?
一般來說,寫出來你認爲你data.frame應該像它的有用的 - 至少在第一排。 – 2012-04-02 16:17:37