gpt4 book ai didi

python - 在 Python 中为数据框设置每月最后一个工作日

转载 作者:行者123 更新时间:2023-12-01 01:51:24 25 4
gpt4 key购买 nike

我有一个下面的数据框,并且想要对具有该月最后一个工作日的数据框进行子集化以分隔数据框。

df =
日期 开盘价 最低价 收盘价 调整收盘量
0 2007-06-18 0.33979 0.33979 0.33979 0.33979 0.33979 1591888
1 2007-06-29 0.33074 0.33074 0.33074 0.33074 0.33074 88440
2 2007-06-20 0.33526 0.33526 0.33526 0.33526 0.33526 3538
3 2007-06-21 0.32113 0.32113 0.32113 0.32113 0.32113 3550
4 2007-06-22 0.34713 0.34713 0.34713 0.34713 0.34713 670

df_输出=


日期 开盘价 最低价 收盘价 调整收盘量
1 2007-06-29 0.33074 0.33074 0.33074 0.33074 0.33074 88440

我已尝试 df = pd.to_datetime(df['Date'], format='%Y%m%d') + pd.offsets.BMonthEnd(1) 但不起作用我查看了 here但没有找到正确的方法。谁能帮我解决这个问题。

最佳答案

你可以这样做:

# in case Date is not in datetime format:
df['Date'] = pd.to_datetime(df['Date'])

df_output = df.loc[df.Date.isin(df.Date + pd.offsets.BMonthEnd(1))]

这将返回:

>>> df_output
Date Open High Low Close Adj Close Volume
1 2007-06-29 0.33074 0.33074 0.33074 0.33074 0.33074 88440

说明:

df.Date + pd.offsets.BMonthEnd(1) 返回您拥有数据的每个月的最后一个工作日的一系列数据:

>>> df.Date + pd.offsets.BMonthEnd(1)
0 2007-06-29
1 2007-07-31
2 2007-06-29
3 2007-06-29
4 2007-06-29

然后,您使用 loc 来查找数据框中实际 Date 位于该系列中的任何行(使用 .isin )

关于python - 在 Python 中为数据框设置每月最后一个工作日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50686532/

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