如果列包含Python Pandas中的任何特殊字符,则重复行

2024-06-24 13:26:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我写了一个小python程序来处理我收到的订单。但是由于参考值的改变,我用来合并我的df on被改变了。在

示例:

Data

问题是,我过去常常把旧的订单号和新的订单号合并,这样我就知道有客户要退货了。但最近我开始收到部分订单,是3c456而不是3c456/4c345。这意味着我的客户现在只更新了一种产品。 我的pd合并代码再也找不到偏序了。在

我的密码是

df = pd.merge(old_PO_file, New_PO_file, on =PO-number)

因为新订单是部分的,可以是斜杠前后的值。 如果采购订单编号列中有斜杠(/),我想复制该单元格中的所有行。在

如果可能的话,请告诉我。在

谢谢


Tags: 代码订单程序示例df客户产品on
1条回答
网友
1楼 · 发布于 2024-06-24 13:26:54

您可以将^{}^{}一起使用,为^{}创建{}到原始{}:

print (df)
   Sold-to    PO-Number Sold-to-party
0     1234       6d1234   abc company
1     2345  3c456/4c345   edf company
2     5679        9f639   mno company

df1 = df.drop('PO-Number', axis=1) \
        .join(df['PO-Number'] \
        .str \
        .split('/', expand=True) \
        .stack() \
        .reset_index(level=1, drop=True).rename('PO-Number')) \
        .reset_index(drop=True)

print (df1)
   Sold-to Sold-to-party PO-Number
0     1234   abc company    6d1234
1     2345   edf company     3c456
2     2345   edf company     4c345
3     5679   mno company     9f639

相关问题 更多 >