在已排序的pandas数据帧中添加一行

时间:2018-02-09 17:15:14

标签: python pandas sorting

我有一个我已经分类的pandas数据框:

    df = df.sort_values(
        by=['col1', 'col2'],
        kind='quicksort', # 'quicksort', 'mergesort', 'heapsort'
    )

然后我收到一个要添加到数据帧的新行。我可以将它添加到最后并重新运行排序,但这感觉效率低下。我相信计算机会重新检查一切是否正确。但是,所有需要做的就是在适当的位置插入新行。

我如何实施更有效的方法?

例如

这只是一个例子。我仍在寻找一般答案。

假设我的排序数据框看起来像

  politician                 name zip-code   tx-date  tx-amount
2  C00384818       ABBOTT, JOSEPH    02895  01122017        250
4  C00384516       ABBOTT, JOSEPH    02895  01122018        333
5  C00384516      SABOURIN, JAMES    02895  01312018        384
1  C00177436    DEEHAN, WILLIAM N    30004  01312017        384
3  C00177436  JEROME, CHRISTOPHER    30750  10312017        384
...

并包含大约40,000行数据。我想插入行

C00384516      SABOURIN, JAMES    02895  01312017        230

进入数据帧。结果应该看起来像

      politician                 name zip-code   tx-date  tx-amount
    2  C00384818       ABBOTT, JOSEPH    02895  01122017        250
    4  C00384516       ABBOTT, JOSEPH    02895  01122018        333
40001  C00384516      SABOURIN, JAMES    02895  01312017        230
    5  C00384516      SABOURIN, JAMES    02895  01312018        384
    1  C00177436    DEEHAN, WILLIAM N    30004  01312017        384
    3  C00177436  JEROME, CHRISTOPHER    30750  10312017        384

0 个答案:

没有答案