<p>这可以通过熊猫使用<a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.merge.html" rel="nofollow noreferrer">merge</a>实现。你知道吗</p>
<pre><code>import pandas as pd
import numpy as np
#put you file path here instead of mine
#Just change the stuff in quotes to the path where the csvs
#you want to process are, making sure to inlclude the correct names
#csv1 should have the bigger dataset, csv2 is just the margin and catcode
csv1_filename='U:/PLAN/BCUBRICH/Python/Tests/merge_test/csv1.txt'
csv2_filename='U:/PLAN/BCUBRICH/Python/Tests/merge_test/csv2.txt'
df1=pd.read_csv(csv1_filename, sep=';') #save first csv as dataframe
df2=pd.read_csv(csv2_filename,sep=';') #save second csv as dataframe
#merge the two so that if there is a catcode in the second file the new
#column margin will be filled with the correct value
df_final=df1.merge(df2, left_on='CatCode',right_on='CATCODE', how='outer')
df_final['price']=np.where(df_final['MARGIN'].isnull(),df_final['price'],df_final['price']*(1+df_final['MARGIN'])*1.24)
df_final.to_csv('your_path\file_name_you_want.txt', sep=';',index=False)
</code></pre>
<p>这是您的原始csv。你知道吗</p>
<p><a href="https://i.stack.imgur.com/ZtfW7.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/ZtfW7.png" alt="enter image description here"/></a></p>
<p>下面是合并数据帧的最终输出。你知道吗</p>
<p><a href="https://i.stack.imgur.com/8h3TB.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/8h3TB.png" alt="enter image description here"/></a></p>