为了账号安全,请及时绑定邮箱和手机立即绑定

训练定制模型

训练定制模型

人到中年有点甜 2023-09-12 20:08:59
我下面有 python 中的 panda 数据框。full_name  serial  Date_YMD        prc1     prc2    volume bottle_a  AX80    20200922    12874.50  12927.75   61023.0  bottle_a  AX80    20200923    12878.50  12926.75   61023.0 bottle_a  AX80    20200924    12872.50  12928.75   61023.0 bottle_a  AX80    20200925    12885.50  12984.25   62295.0 bottle_a  AX80    20200926    12880.00  13000.00   14224.0我想根据 Date_YMD 列检测哪一行属于星期六。volume将本周六和前一天(周五)的值相加volume,然后将总和分配给周五的volume。最终的数据框看起来像这样;full_name  serial  Date_YMD        prc1     prc2    volume bottle_a  AX80    20200922    12874.50  12927.75   61023.0  bottle_a  AX80    20200923    12878.50  12926.75   61023.0 bottle_a  AX80    20200924    12872.50  12928.75   61023.0 bottle_a  AX80    20200925    12885.50  12984.25   76519.0 bottle_a  AX80    20200926    12880.00  13000.00   14224.0  我正在使用 python 3.8。
查看完整描述

1 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

你可以做:


df['Date_YMD'] = pd.to_datetime(df['Date_YMD'], format='%Y%m%d')

m = df['Date_YMD'].shift(-1).dt.weekday.eq(5)

df.loc[m, 'volume'] += df['volume'].shift(-1)

  full_name serial   Date_YMD     prc1      prc2   volume

0  bottle_a   AX80 2020-09-22  12874.5  12927.75  61023.0

1  bottle_a   AX80 2020-09-23  12878.5  12926.75  61023.0

2  bottle_a   AX80 2020-09-24  12872.5  12928.75  61023.0

3  bottle_a   AX80 2020-09-25  12885.5  12984.25  76519.0

4  bottle_a   AX80 2020-09-26  12880.0  13000.00  14224.0


查看完整回答
反对 回复 2023-09-12
  • 1 回答
  • 0 关注
  • 89 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信