0

我已经看过很多关于如何使用合并的例子。

有没有人试过做这样的事情?

df = pd.read(“data1.csv).merge(pd.read_csv(“data2.csv, how='inner', on='a'))

我要试试,但我想我也会在这里问...

如果可以的话,那么我就不需要分别读取 data1 和 data2 然后执行合并(创建 3 个数据帧......如果 data1 和 data2 很大,那么如果我能做所有事情,那就是浪费内存一步)

4

1 回答 1

0

看起来你实际上可以做到这一点 - 我想知道这是否有助于内存管理。

见下文。

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'])
于 2021-04-29T14:43:05.787 回答