Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 折叠用于回归的多索引数据帧_Python_Python 2.7_Pandas - Fatal编程技术网

Python 折叠用于回归的多索引数据帧

Python 折叠用于回归的多索引数据帧,python,python-2.7,pandas,Python,Python 2.7,Pandas,我有一个包含解释变量df的多索引数据框和一个包含响应变量df_Y # Create DataFrame for explanatory variables np.arrays = [['foo', 'foo', 'foo', 'bar', 'bar', 'bar'], [1, 2, 3, 1, 2, 3]] df = pd.DataFrame(np.random.randn(6,2), index=pd.MultiIndex.fro

我有一个包含解释变量
df
的多索引数据框和一个包含响应变量
df_Y

# Create DataFrame for explanatory variables
np.arrays = [['foo', 'foo', 'foo', 'bar', 'bar', 'bar'], 
             [1, 2, 3, 1, 2, 3]]
df = pd.DataFrame(np.random.randn(6,2),
                  index=pd.MultiIndex.from_tuples(zip(*np.arrays)),
                  columns=['X1', 'X2'])

我能够使用索引
foo

df_X = df.ix['foo']    # using only 'foo'
reg = linear_model.Ridge().fit(df_X, df_Y)
reg.coef_
问题:但是,由于
Y
变量对于
foo
bar
这两个级别都是相同的,因此如果我们还包括
bar
,则回归样本的数量可以增加一倍

重塑/折叠/取消堆叠多级数据框的最佳方法是什么,以便我们可以利用所有数据进行回归其他级别可能有较少的行
df_Y


很抱歉措辞混乱,我不确定正确的术语/措辞

可以删除第一个索引,然后连接将起作用:

df.index = df.index.drop_level()
df = df.join(df_Y)
df.index = df.index.drop_level()
df = df.join(df_Y)