2015-03-20 6 views
7

आर में एक स्पष्ट चर के प्रत्येक स्तर के लिए डमी चर के साथ एक रिग्रेशन चलाने के लिए अच्छी कार्यक्षमता है। जैसे Automatically expanding an R factor into a collection of 1/0 indicator variables for every factor levelजूलिया में डमी वैरिएबल

क्या जूलिया में ऐसा करने का एक समान तरीका है।

x = randn(1000) 
group = repmat(1:25 , 40) 
groupMeans = randn(25) 
y = 3*x + groupMeans[group] 

data = DataFrame(x=x, y=y, g=group) 
for i in levels(group) 
    data[parse("I$i")] = data[:g] .== i 
end 
lm(y~x+I1+I2+I3+I4+I5+I6+I7+I8+I9+I10+ 
    I11+I12+I13+I14+I15+I16+I17+I18+I19+I20+ 
    I21+I22+I23+I24, data) 

उत्तर

4

आप DataFrames पैकेज का उपयोग कर रहे हैं, के बाद आप pool डेटा, पैकेज बाकी की देखभाल करेंगे:

पूलिंग कॉलम GLM पैकेज के साथ काम करने के लिए महत्वपूर्ण है जब फिटिंग प्रतिगमन मॉडल , इनपुट में PooledDataArray कॉलम को ModelMatrix में 0/1 संकेतक कॉलम में अनुवादित किया जाता है - PooledDataArray के प्रत्येक स्तर के लिए एक कॉलम के साथ।

आप एकत्रित डेटा पर here

+0

btw प्रलेखन के बाकी देख सकते हैं, क्या एकत्रित डेटा फ्रेम के साथ होने की जरूरत है: 'पूल (डेटा, [: जी]); एलएम (वाई ~ एक्स + जी, डेटा) ' –