gpt4 book ai didi

datetime - 如果存在重复的 Ticker 且时间差超过一个月,则从数据框中提取 Ticker 名称

转载 作者:行者123 更新时间:2023-12-02 22:04:15 24 4
gpt4 key购买 nike

所以我有一个数据框df,其中包含一堆Ticker名称和其他列。该索引采用日期时间形式。

它看起来像这样:

                    Ticker                          Owner  \
SEC Form 4
1900-10-14 17:15:00 AA SORRELL MARTIN
1900-10-14 17:13:00 AA TATA RATAN
1900-11-07 18:26:00 AA NELLES DUANE
1900-11-10 16:53:00 AAT RADY ERNEST S
1900-11-10 16:53:00 AAT RADY ERNEST S
1900-11-15 17:12:00 ABR Tsunis George
1900-11-15 17:12:00 ABR Tsunis George
1900-11-14 10:02:00 ABT WHITE MILES D
1900-11-14 10:04:00 ABT WHITE MILES D
1900-11-14 10:03:00 ABT WHITE MILES D
1900-11-14 10:02:00 ABT WHITE MILES D
1900-11-14 10:03:00 ABT WHITE MILES D
1900-11-03 14:20:00 AGC L.P.
1900-11-07 14:51:00 AGC SEIZERT GERALD L
1900-11-07 14:51:00 AGC SEIZERT GERALD L
1900-10-07 17:27:00 AHC MORONEY JAMES M III
1900-05-03 18:05:00 AHC MORONEY JAMES M III
1900-11-03 18:05:00 AHC MORONEY JAMES M III

如果所述股票代码具有位于不同月份的索引日期(SEC 表格 4),我想打印股票代码及其随附的行值(这些行的所有者和 SEC 表单值)。因此,在这种情况下,我想提取带有 AA 的所有行和带有 Ticker AHC 的所有行,因为它们都包含不同月份的索引日期。

所以输出应该是这样的:

                   Ticker                          Owner  \
SEC Form 4
1900-10-14 17:15:00 AA SORRELL MARTIN
1900-10-14 17:13:00 AA TATA RATAN
1900-11-07 18:26:00 AA NELLES DUANE
1900-10-07 17:27:00 AHC MORONEY JAMES M III
1900-05-03 18:05:00 AHC MORONEY JAMES M III
1900-11-03 18:05:00 AHC MORONEY JAMES M III

我认为最好的方法是使用 groupby 但我不太确定如何从那里开始。

 Ticker_groups = df.groupby('Ticker')

我试图访问索引(保存日期),但我不太确定如何访问。

 df.groupby('Ticker').index  #doesn't work

我查看了 datetimeindex 文档,发现了

DatetimeIndex.month

这可能很有用,但我不知道如何将其干净地应用到 groupby 的索引中。

谢谢。

最佳答案

您可以将 groupbyfilter 与 lambda 函数结合使用,该函数将对月份执行 pd.value_counts 并检查是否有超过其中有一个条目。

df.groupby('Owner').filter(lambda x: pd.value_counts(x.index.month).shape[0] > 1)

Owner SEC Form 4
Ticker
1900-10-14 17:15:00 AA SORRELL MARTIN
1900-10-14 17:13:00 AA TATA RATAN
1900-11-07 18:26:00 AA NELLES DUANE
1900-10-07 17:27:00 AHC MORONEY JAMES M III
1900-05-03 18:05:00 AHC MORONEY JAMES M III
1900-11-03 18:05:00 AHC MORONEY JAMES M III

关于datetime - 如果存在重复的 Ticker 且时间差超过一个月,则从数据框中提取 Ticker 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40622224/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com