Проблема:
- один имеет 2 кадра данных
- один знает, что оба имеют идентичные индексы (MultiIndex)
- (на всякий случай, если это помогает) обаСортировка индексов
- в обоих DataFrames есть столбцы, которые не пересекаются
Как можно очень эффективно объединить 2 DataFrames, просто сложив их блоки памяти вместе, то есть эквивалент
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