我是Python新手,我正在尝试使用Pandas(我可以使用VBA,但需要相当长的时间)将2张Excel表合并为1张(就像Excel中的Vlookup函数)。我有一个问题如下:
这是我的代码:
import pandas as pd
df1 = pd.DataFrame({'v_contract_number': ['VN120001438','VN120001439'],'maturity date': ['31/12/2021','31/12/2021']})
df2 = pd.DataFrame({'v_contract_number': ['VN120001438','VN120001439'], 'd_revised_maturity_date': ['31/12/2021',' ']})
print(df1)
# df1
v_contract_number maturity date
0 VN120001438 31/12/2021
1 VN120001439 31/12/2021
print(df2)
# df2
v_contract_number d_revised_maturity_date
0 VN120001438 31/12/2021
1 VN120001439
results = pd.merge(df1, df2, on=['v_contract_number'],how='left')
print(results)
# results
v_contract_number maturity date d_revised_maturity_date
0 VN120001438 31/12/2021 31/12/2021
1 VN120001439 31/12/2021
我想要的是,如果“d\u修订的\u到期日\u日期”为空,则为空=“到期日”
我的预期结果是:
v_contract_number maturity date d_revised_maturity_date
0 VN120001438 31/12/2021 31/12/2021
1 VN120001439 31/12/2021 31/12/2021
我可以使用iferror在excel中完成这项任务,但我不知道如何使用python
谢谢并致以最良好的问候
合并后,可以使用
mask
:这将用
maturity date
列的相应值填充d_revised_maturity_date
(在eq
上找到" "
)的空插槽得到
(如果要替换
d_revised_maturity_date
列中的任何类型的空格,可以将上面的d_date.eq(" ")
更改为其中包括完全空的字符串、一个或多个空格。)
您可以使用
fillna
用另一列填充na/nan值我应该为你工作
相关问题 更多 >
编程相关推荐