有没有办法反向搜索特定值,标记它们并在新日期列下使用其相应的日期?

Is there a way to reverse search for specific values, flag them and use its corresponding date under new date column?

提问人:Sai Paritala 提问时间:8/7/2023 最后编辑:Sai Paritala 更新时间:8/7/2023 访问量:25

问:

块引用

trade_name1 __date1 trade_name2 __date2 trade_name3 __date3 trade_name4 __date4 trade_name5 __date5 trade_name6 __date6 trade_name7 __date7 trade_name8 __date8 trade_name9 __date9 trade_name10 __date10 trade_name11 __date11 trade_name12 __date12 trade_name13 __date13 trade_name14 __date14 trade_name15 __date15 trade_name16 __date16 trade_name17 __date17 trade_name18 __date18 trade_name19 __date19 trade_name20 __date20
毫米 1/1/2021 毫米 9/15/2022 下午 10/10/2022 下午 10/29/2022 下午 11/14/2022 下午 12/29/2022 下午 1/27/2023 下午 2/27/2023 4/25/2023 . . . . . . . . . . .
下午 2/17/2021 10/10/2022 . . . . . . . . . . . . . . . . . .
下午 3/3/2021 兆字节 9/13/2022 . . . . . . . . . . . . . . . . . .
JM公司 3/3/2021 3/7/2023 下午 4/8/2023 . . . . . . . . . . . . . . . . .
毫米 3/4/2021 兆字节 10/12/2022 . . . . . . . . . . . . . . . . . .
JM公司 3/4/2021 兆字节 10/21/2022 . . . . . . . . . . . . . . . . . .

块引用

这些是从我的原始数据集(不是整个列)导入的列之一。我有一个问题,我知道如何在理论上解决,但很难为它编程(这里是 2 个月的 Python)。

在我的数据中,有一些列称为“trade_name1到trade_name20”和_date1到_date20。我想在这里做的是,如果最后一列的值为“PB”或“MB”,并且缺少后续trade_name列,则标记并获取与此列关联的日期列,并将其作为新日期。如果最后一列值为“MM”、“PM”或“JM”,则查看前一列是否有“PB”或“MB”并标记它,然后使用与之关联的日期并将其作为新日期。请问如何处理这个问题?

输出应如下所示:

块引用

trade_name1 __date1 trade_name2 __date2 trade_name3 __date3 trade_name4 __date4 trade_name5 __date5 trade_name6 __date6 trade_name7 __date7 trade_name8 __date8 trade_name9 __date9 trade_name10 __date10 trade_name11 __date11 trade_name12 __date12 trade_name13 __date13 trade_name14 __date14 trade_name15 __date15 trade_name16 __date16 trade_name17 __date17 trade_name18 __date18 trade_name19 __date19 trade_name20 __date20 trade_flag 日期
毫米 1/1/2021 毫米 9/15/2022 下午 10/10/2022 下午 10/29/2022 下午 11/14/2022 下午 12/29/2022 下午 1/27/2023 下午 2/27/2023 4/25/2023 . . . . . . . . . . . 1 4/25/2023
下午 2/17/2021 10/10/2022 . . . . . . . . . . . . . . . . . . 1 10/10/2022
下午 3/3/2021 兆字节 9/13/2022 . . . . . . . . . . . . . . . . . . 1 9/13/2022
JM公司 3/3/2021 3/7/2023 下午 4/8/2023 . . . . . . . . . . . . . . . . . 1 3/7/2023
毫米 3/4/2021 兆字节 10/12/2022 . . . . . . . . . . . . . . . . . . 1 10/12/2022
JM公司 3/4/2021 兆字节 10/21/2022 . . . . . . . . . . . . . . . . . . 1 10/21/2022

块引用

Python 数据操作

评论

0赞 itprorh66 8/8/2023
我可能遗漏了一些东西,但您的示例输出看起来与您的示例输入没有任何不同。您能否简化您的示例数据和对您想要做什么的解释?
0赞 Sai Paritala 8/8/2023
嗨,我很抱歉专栏太长了。示例输出的末尾有额外的标志列。我想根据上面解释的逻辑创建标志。
0赞 itprorh66 8/8/2023
正如我之前所说,您的预期输出看起来与您的输入完全相同,所以我不明白您要做什么,您的解释也无济于事,因为我不知道什么是“last_column”,您的示例没有显示什么是缺失的trade_date或给出可以理解的解释。
0赞 Sai Paritala 8/8/2023
因此,从右到左,如果我们遇到“PB”或“MB”值,请标记它并创建一个新的日期列并带来关联的日期值。如果从右到左,我们遇到“JM”、“MM”或“PM”值,则搜索下一列是否有“PB”或“MB”值并标记它并将其日期放在新的日期列下。

答: 暂无答案