我有一個大的數據幀DF,以命名爲列:如何爲數據框的每個子集運行lm,然後聚合結果?
age, income, country
我想要做的其實很simpe,爲每個國家做
fitFunc<-function(thisCountry){
subframe<-df[which(country==thisCountry)];
fit<-lm(income~0+age, data=subframe);
return(coef(fit));
}
。然後彙總結果到一個新的數據幀的樣子:
countryname, coeffname
1 USA 1.2
2 GB 1.0
3 France 1.1
我試圖做的:
do.call("rbind", lapply(allRics[1:5], fitit))
但我不知道下一步該怎麼做。
任何人都可以幫忙嗎?
謝謝!
我不知道這一點......顯然'lm'有一個'subset'選項:http://stackoverflow.com/questions/11328003/how-does-the-subset-argument-work- in-the-lm-function?rq = 1查看右邊的其他「相關鏈接」。 – Frank
什麼是問題?小提示 - 給子幀添加逗號<-df [which(country == thisCountry),]',否則這行應該返回錯誤。 – DrDom