我有以下dataframe:
| id_cnt| id_prd|类型|价格|
| --|--|--|--|
| 1 |一|SS| 10 |
| 2 |一|AA| 20 |
| 3 |一|AA| 25 |
| 1 |B| AA| 55 |
| 2 |B| SS| 50 |
| 3 |B| AA| 75 |
| 4 |B| AA| 80 |
我需要添加一个新栏目:rownumber
。对于每个id_prd
,按price
排序并获得行号,但仅当type = "AA"
时。
预期输出:
| id_cnt| id_prd|类型|价格|rownumber|
| --|--|--|--|--|
| 1 |一|SS| 10 |null|
| 2 |一|AA| 20 | 2 |
| 3 |一|AA| 25 | 1 |
| 1 |B| AA| 55 | 3 |
| 2 |B| SS| 50 |null|
| 3 |B| AA| 75 | 2 |
| 4 |B| AA| 80 | 1 |
1条答案
按热度按时间zd287kbt1#
您可以使用
Window
,并按id_prd
和type
进行分区,并按price
排序,然后仅在有type = AA
的情况下获得row_number