चलाने के लिए पांडा डेटाफ्रेम के कॉलम पर पुनरावृत्ति कैसे करें मुझे यकीन है कि यह आसान है, लेकिन पाइथन के लिए एक पूर्ण नौसिखिया के रूप में, मुझे यह पता लग रहा है कि pandas
डेटाफ्रेम में चरों को फिर से कैसे चालू किया जाए और एक रिग्रेशन चलाएं प्रत्येक के साथ।रिग्रेशन
यहाँ मैं क्या कर रहा है:
all_data = {}
for ticker in ['FIUIX', 'FSAIX', 'FSAVX', 'FSTMX']:
all_data[ticker] = web.get_data_yahoo(ticker, '1/1/2010', '1/1/2015')
prices = DataFrame({tic: data['Adj Close'] for tic, data in all_data.iteritems()})
returns = prices.pct_change()
मैं जानता हूँ कि मैं इस तरह एक प्रतिगमन चला सकते हैं:
regs = sm.OLS(returns.FIUIX,returns.FSTMX).fit()
लेकिन लगता है मुझे dataframe में प्रत्येक स्तंभ के लिए ऐसा करना चाहते हैं। विशेष रूप से, मैं एफएसटीएमएक्स पर FIUIX, और फिर एफएसटीएमएक्स पर एफएसएक्स, और फिर एफएसटीएमएक्स पर एफएसएवीएक्स को वापस करना चाहता हूं। प्रत्येक प्रतिगमन के बाद मैं अवशेषों को स्टोर करना चाहता हूं।
मैं निम्नलिखित के विभिन्न संस्करणों की कोशिश की है, लेकिन मैं वाक्य रचना गलत हो रही किया जाना चाहिए:
resids = {}
for k in returns.keys():
reg = sm.OLS(returns[k],returns.FSTMX).fit()
resids[k] = reg.resid
मुझे लगता है कि समस्या मैं कुंजी द्वारा रिटर्न स्तंभ को संदर्भित करने के लिए कैसे नहीं जानते हैं, तो returns[k]
शायद गलत है।
ऐसा करने के सर्वोत्तम तरीके पर कोई मार्गदर्शन बहुत सराहना की जाएगी। शायद एक आम पांडा दृष्टिकोण है जो मुझे याद आ रही है।
आप की तरह तो कॉलम सबस्क्रिप्ट कर सकते हैं अगर मैं + 1 = लेन (DF): # एस.एम. .OLS (रिटर्न [रिटर्न.coloumns [i]], रिटर्न [return.columns [i + 1]] देता है), फिट() 'os समान – EdChum