整個數據包括5列,分別命名爲A,B,C,D和投資組合。我將運行每個投資組合的線性迴歸模型。因此,整個數據被分爲子集數據。然後,運行迴歸模型並檢查其總結。 數據幀類似於下表,如何通過使用循環函數獲得簡明代碼
A B C D Portfolio
1 ... 11
2 ... 22
3 ... 13
4 ... 11
5 ... 21
6 ... 21
7 ... 23
8 ... 12
9 ... 11
10 ... 12
11 ... 22
...
我確實呈現如下的代碼,
Portfolio_11<-subset(df, Portfolio==11)
Portfolio_12<-subset(df, Portfolio==12)
Portfolio_13<-subset(df, Portfolio==13)
Portfolio_21<-subset(df, Portfolio==21)
Portfolio_22<-subset(df, Portfolio==22)
Portfolio_23<-subset(df, Portfolio==23)
Reg_11<-lm(A ~ B + C + D, data=Portfolio_11)
Reg_12<-lm(A ~ B + C + D, data=Portfolio_12)
Reg_13<-lm(A ~ B + C + D, data=Portfolio_13)
Reg_21<-lm(A ~ B + C + D, data=Portfolio_21)
Reg_22<-lm(A ~ B + C + D, data=Portfolio_22)
Reg_23<-lm(A ~ B + C + D, data=Portfolio_23)
summary(Reg_11)
summary(Reg_12)
summary(Reg_13)
summary(Reg_21)
summary(Reg_22)
summary(Reg_23)
我嘗試通過使用循環函數來簡化R代碼裏面。像,
for (i=1:3, j=1:3){
Portfolio_ij<-subset(df, Portfolio==ij)
Reg_ij<-lm(A ~ B + C + D, data=Portfolio_ij)
summary(Reg_ij)
}
但是,我是一個在r的啓動,並不真正瞭解循環功能的規則。所以我想學習它。非常感謝。
可以請你把它變成一個[可重現的例子](http:// stackoverflow。com/questions/5963269/how-to-make-a-great-r-reproducible-example?rq = 1)? –