我想用熊猫训练多个OLS模型(事实上,这个数字总共约为500个)。我能以批量的方式做这件事吗?
这是一个简化的案例,我想训练5个模型,比如m1,m2,m3,m4,m5。
每个型号都有4度'自由。
我没有按顺序训练m1到m5,而是希望将所有Y数据组织成DataFrame
之类的
def makeDataFrame():
return pandas.DataFrame(
data={
'm1':range(10),
'm2':range(10),
'm3':range(10, 20),
'm4':range(20, 30),
'm5':range(30, 40)})
Y = makeDataFrame()
m1 m2 m3 m4 m5
0 0 0 10 20 30
1 1 1 11 21 31
2 2 2 12 22 32
3 3 3 13 23 33
4 4 4 14 24 34
5 5 5 15 25 35
6 6 6 16 26 36
7 7 7 17 27 37
8 8 8 18 28 38
9 9 9 19 29 39
然后将对应于每个Y的所有X收集到面板中
X = pandas.Panel({'A':makeDataFrame(), 'B':makeDataFrame(), 'C':makeDataFrame()})
然后使用pandas.ols(y = Y, x = X)
同时获得m1-m5的五个模型(所有5个模型的形式为Y~A + B + C +截距)。
从我的实验来看,上述代码无法满足我的要求。
任何替代方案?
Pandas可以吗?