我有一个 Dataframe df:
Date Product value Offer
2022-01-01 x_00_02 0.16 5
2022-01-01 x_00_02 0.16 5
2022-01-01 x_00_02 0.16 5
2022-01-01 x_00_02 0.16 5
2022-01-01 x_00_02 0.18 6
2022-01-01 x_00_02 0.18 6
2022-01-01 x_00_02 0.18 6
2022-01-01 x_00_02 0.18 6
2022-01-01 x_02_04 0.32 10
2022-01-01 x_02_04 0.32 10
2022-01-01 x_02_04 0.32 10
2022-01-01 x_02_04 0.32 10
2022-01-01 x_04_06 0.45 11
2022-01-01 x_04_06 0.45 11
2022-01-01 x_04_06 0.45 11
2022-01-01 x_04_06 0.45 11
2022-01-01 x_04_06 0.47 7
2022-01-01 x_04_06 0.47 7
2022-01-01 x_04_06 0.47 7
2022-01-01 x_04_06 0.47 7
...
每个单独的“产品”重复4次(因为这是由前面的代码实现的),并且可以根据值列进行标识。df已经按照日期、产品和值进行了排序。
我想要添加一个新列,根据Product列计算每个“产品”,以便:
- 计数开始于:(最小值 * 2)+ 1
- 计数结束于:最大值 * 2
- 计数表示为:val_0xx,其中xx表示计数值
对于产品x_00_02(最小值= 00,最大值= 02):
- 计数开始于:(0*2)+1 =有效值_001
- 计数结束时间:2*2 =有效值_004
预期产出:
Date Product value Offer Product_2
2022-01-01 x_00_02 0.16 5 val_001
2022-01-01 x_00_02 0.16 5 val_002
2022-01-01 x_00_02 0.16 5 val_003
2022-01-01 x_00_02 0.16 5 val_004
2022-01-01 x_00_02 0.18 6 val_001
2022-01-01 x_00_02 0.18 6 val_002
2022-01-01 x_00_02 0.18 6 val_003
2022-01-01 x_00_02 0.18 6 val_004
2022-01-01 x_02_04 0.32 10 val_005
2022-01-01 x_02_04 0.32 10 val_006
2022-01-01 x_02_04 0.32 10 val_007
2022-01-01 x_02_04 0.32 10 val_008
2022-01-01 x_04_06 0.45 11 val_009
2022-01-01 x_04_06 0.45 11 val_010
2022-01-01 x_04_06 0.45 11 val_011
2022-01-01 x_04_06 0.45 11 val_012
2022-01-01 x_04_06 0.47 7 val_009
2022-01-01 x_04_06 0.47 7 val_010
2022-01-01 x_04_06 0.47 7 val_011
2022-01-01 x_04_06 0.47 7 val_012
1条答案
按热度按时间ippsafx71#
您可以用途: