问题:
一个有2个DataFrame
一个人知道两者有相同的(MultiIndex)指数
(以防它有帮助)两个索引都被排序
两个DataFrame都有不相交的列
如何通过将内存块一起打包来非常有效地连接2个DataFrame,即相当于
pd.concat([df1, df2], axis=1, sort=False)
但强迫某种方式完全忽略两个DataFrames的索引值,使其速度非常快?我希望它基本上尽可能接近内存复制操作(没有合并)。
import pandas as pd
df1 = pd.DataFrame(data={'i1':['a','a','b','b'],
'i2':[0,1,0,1],
'x':[1.,2.,3.,4.]})
df1.set_index(['i1','i2'], inplace=True)
df1.sort_index(inplace=True)
df2 = pd.DataFrame(data={'y':[5,6,7,8]}, index=df1.index)
pd.concat([df1, df2], axis=1, sort=False)
x y
i1 i2
a 0 1.0 5
1 2.0 6
b 0 3.0 7
1 4.0 8
#############分割线######
解决办法:for col in df2:
df1[col] = df2[col].values








暂无数据