比较熊猫数据框行和删除具有重叠日期的行

埃里克·布朗

我有一个数据框,里面充满了交易策略中的交易。交易策略中的逻辑需要更新,以确保如果该策略已经在交易中就不会进行交易-但这是另一个问题。许多先前交易的交易数据从csv文件读取到数据帧中。

这是我所拥有的数据的问题:我需要对数据框进行逐行比较,以确定rowX的Entrydate是否小于ExitDate rowX-1。

我的数据样本:

Row 1:
EntryDate  ExitDate
2012-07-25 2012-07-27 

Row 2:
EntryDate  ExitDate
2012-07-26 2012-07-29

第2行需要删除,因为这是不应该发生的交易。

我在确定哪些行是重复项然后删除它们时遇到了麻烦。我很幸运地尝试了此问题的答案3中方法,但这并不理想,因为我必须手动遍历数据帧并读取每一行的数据。我当前的方法在下面,而且很难看。我检查日期,然后将它们添加到新的数据框中。此外,这种方法使我在最终数据帧中有多个重复项。

for i in range(0,len(df)+1):
    if i+1 == len(df): break #to keep from going past last row
    ExitDate = df['ExitDate'].irow(i)
    EntryNextTrade = df['EntryDate'].irow(i+1)

    if EntryNextTrade>ExitDate: 
        line={'EntryDate':EntryDate,'ExitDate':ExitDate}
        df_trades=df_trades.append(line,ignore_index=True)

关于如何更有效地完成此操作的任何想法或想法?

如果您想尝试重现我的实际数据框,可以单击此处查看我的数据样本。

安迪·海登(Andy Hayden)

您应该使用某种布尔型掩码来执行这种操作。

一种方法是为下一次交易创建一个虚拟列:

df['EntryNextTrade'] = df['EntryDate'].shift()

使用它来创建遮罩:

msk = df['EntryNextTrade'] > df'[ExitDate']

并使用loc来查看mData为True的subDataFrame,并且仅查看指定的列:

df.loc[msk, ['EntryDate', 'ExitDate']]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

遍历熊猫数据框时删除行

来自分类Dev

在python 3.4.1中删除具有字符串值的熊猫数据框的行

来自分类Dev

比较熊猫数据框中的行值

来自分类Dev

比较Pandas数据框中具有上百万行的行和上一行的最快方法

来自分类Dev

Python熊猫:有效比较数据框的行?

来自分类Dev

根据日期从熊猫数据框中删除行

来自分类Dev

添加许多具有重叠索引和列的熊猫数据框

来自分类Dev

熊猫数据框删除具有相同值的数据行

来自分类Dev

删除所有未包含日期索引的多个熊猫数据框的所有行

来自分类Dev

如何将具有行和列标签的矩阵外观数据框转换为常规的熊猫数据框?

来自分类Dev

熊猫数据框显示具有所需条件的行

来自分类Dev

如何在熊猫数据框中完全用零删除所有行和列

来自分类Dev

比较熊猫数据框行

来自分类Dev

无法比较日期变量和熊猫数据框之间的日期

来自分类Dev

从具有多级标题的数据框中删除行

来自分类Dev

根据日期和时间条件熊猫数据帧删除行

来自分类Dev

从具有布尔值的数据框中删除行

来自分类Dev

Python Pandas:根据某些列比较数据框的行,并删除具有最低值的行

来自分类Dev

根据日期比较从数据框中删除行

来自分类Dev

熊猫:删除具有唯一索引值的数据框行

来自分类Dev

如何从R中具有重复的开始和结束日期的数据框中删除行

来自分类Dev

如何删除熊猫数据框中具有重复的行?

来自分类Dev

如何从熊猫数据框中删除具有特定属性值的行的分数

来自分类Dev

熊猫数据框比较每组的第一行和最后一行

来自分类Dev

从熊猫数据框中选择带有日期的行

来自分类Dev

删除具有多列的数据框中的重复行

来自分类Dev

删除具有特定日期时间值的 Pandas 数据框中的某些行

来自分类Dev

从熊猫数据框中选择具有相同数据的行

来自分类Dev

过滤、平均和删除熊猫数据框中的行

Related 相关文章

  1. 1

    遍历熊猫数据框时删除行

  2. 2

    在python 3.4.1中删除具有字符串值的熊猫数据框的行

  3. 3

    比较熊猫数据框中的行值

  4. 4

    比较Pandas数据框中具有上百万行的行和上一行的最快方法

  5. 5

    Python熊猫:有效比较数据框的行?

  6. 6

    根据日期从熊猫数据框中删除行

  7. 7

    添加许多具有重叠索引和列的熊猫数据框

  8. 8

    熊猫数据框删除具有相同值的数据行

  9. 9

    删除所有未包含日期索引的多个熊猫数据框的所有行

  10. 10

    如何将具有行和列标签的矩阵外观数据框转换为常规的熊猫数据框?

  11. 11

    熊猫数据框显示具有所需条件的行

  12. 12

    如何在熊猫数据框中完全用零删除所有行和列

  13. 13

    比较熊猫数据框行

  14. 14

    无法比较日期变量和熊猫数据框之间的日期

  15. 15

    从具有多级标题的数据框中删除行

  16. 16

    根据日期和时间条件熊猫数据帧删除行

  17. 17

    从具有布尔值的数据框中删除行

  18. 18

    Python Pandas:根据某些列比较数据框的行,并删除具有最低值的行

  19. 19

    根据日期比较从数据框中删除行

  20. 20

    熊猫:删除具有唯一索引值的数据框行

  21. 21

    如何从R中具有重复的开始和结束日期的数据框中删除行

  22. 22

    如何删除熊猫数据框中具有重复的行?

  23. 23

    如何从熊猫数据框中删除具有特定属性值的行的分数

  24. 24

    熊猫数据框比较每组的第一行和最后一行

  25. 25

    从熊猫数据框中选择带有日期的行

  26. 26

    删除具有多列的数据框中的重复行

  27. 27

    删除具有特定日期时间值的 Pandas 数据框中的某些行

  28. 28

    从熊猫数据框中选择具有相同数据的行

  29. 29

    过滤、平均和删除熊猫数据框中的行

热门标签

归档