我正在尝试合并下面的“单位”列中的任何列
from pandas import DataFrame
import pandas as pd
import difflib
df1 = DataFrame([[1,'034567','Foo'],
[2,'1cd2346','Bar']],
columns=['UID','Unit','Name'])
df2 = DataFrame([['SellTEST','0ab1234567,034567'],
['superVAR','1cd2346']],
columns=['Seller', 'Unit'])
merge2_df = pd.merge(df1, df2, on=['Unit'], how='left')
merge2
这将产生一个NaN值:
UID Unit Name Seller
0 1 034567 Foo NaN
1 2 1cd2346 Bar superVAR
当我想看到的是:
UID Unit Name Seller
0 1 034567 Foo SellTEST
1 2 1cd2346 Bar superVAR
我正在从CSV导入数据,因此,某些字段将包含多个“Unit”值。理想情况下,我希望能够在合并过程中处理这个问题。有什么建议吗
您需要将
Unit
数据拆分为df2
中的单数行。例如,0ab1234567,034567
行将进入行。在此之后,您可以应用pd.merge
相关问题 更多 >
编程相关推荐