如何用条件语句标记DataFrame重复项首尾及调整分组映射
DataFrame条件标记需求
我正在处理如下DataFrame:
issue_status market_phase trading_status is_and_mp market_state reason 0 10 0 B0 100 UNSCHEDULED_AUCTION 1 20 0 200 CONTINUOUS_TRADING 2 40 0 D1 400 POST_TRADE 3 10 0 100 4 10 0 100 5 40 0 400 6 40 0 400 7 40 0 400
需要编写Python条件:
- 当
is_and_mp为100且trading_status为None时,标记该类第一个实例的reason列为F; - 当
is_and_mp为400且trading_status为None时,标记倒数第二个实例为SL,最后一个实例为L。
期望输出如下:
issue_status market_phase trading_status is_and_mp market_state reason 0 10 0 B0 100 UNSCHEDULED_AUCTION 1 20 0 200 CONTINUOUS_TRADING 2 40 0 D1 400 POST_TRADE 3 10 0 100 F 4 10 0 100 5 40 0 400 6 40 0 400 SL 7 40 0 400 L
注:100和400的逻辑可分开处理。
分组映射结果不符合预期的排查需求
感谢之前的解决方案,但在如下输入中测试时,分组映射未达到预期:
trading_status is_and_mp market_state groups 0 000 CLOSED 1 1 200 CONTINUOUS_TRADING 2 2 103 None 3 3 204 UNSCHEDULED_AUCTION 4 4 203 UNSCHEDULED_AUCTION 5 5 B0 100 UNSCHEDULED_AUCTION 6 6 B1 200 CONTINUOUS_TRADING 7 7 400 None 8 8 A0 400 HALTED 9 9 100 None 10 10 100 None 10 11 400 None 11 12 400 None 12
期望的groups列输出:
groups 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 10 11 8 12 8
内容的提问来源于stack exchange,提问作者user19667022
相关产品推荐
相关产品推荐

