我已经看过很多关于如何使用合并的例子。
有没有人试过做这样的事情?
df = pd.read(“data1.csv).merge(pd.read_csv(“data2.csv, how='inner', on='a'))
我要试试,但我想我也会在这里问...
如果可以的话,那么我就不需要分别读取 data1 和 data2 然后执行合并(创建 3 个数据帧......如果 data1 和 data2 很大,那么如果我能做所有事情,那就是浪费内存一步)
看起来你实际上可以做到这一点 - 我想知道这是否有助于内存管理。
见下文。
data1 = pd.DataFrame({'key1': ['K0', 'K0', 'K1', 'K2'],
'key2': ['K0', 'K1', 'K0', 'K1'],
'P': ['P0', 'P1', 'P2', 'P3'],
'Q': ['Q0', 'Q1', 'Q2', 'Q3']})
data2 = pd.DataFrame({'key1': ['K0', 'K1', 'K1', 'K2'],
'key2': ['K0', 'K0', 'K0', 'K0'],
'R': ['R0', 'R1', 'R2', 'R3'],
'S': ['S0', 'S1', 'S2', 'S3']})
merged_data1 = pd.merge(data1, data2, on=['key1', 'key2'])
data1.to_csv("data1.csv")
data2.to_csv("data2.csv")
merged_data2 = pd.merge(pd.read_csv("data1.csv"), pd.read_csv("data2.csv"), on=['key1', 'key2'])