gpt4 book ai didi

python - 使用两个 CSV 文件进行 CSV 查找并生成新文件

转载 作者:行者123 更新时间:2023-11-29 11:12:00 32 4
gpt4 key购买 nike

我对Python世界非常陌生,我有一个不知道如何面对的问题。我关心的表格示例可以在以下链接中找到:/image/mm1it.png

我有一个 csv 文件,其中包含类似于 t1 中的表(来自链接),充当数据库(这只是整个数据库的一个片段)。

我有另一个表 (t2),我想将其用作搜索参数。

我想创建一个查找和返回程序,该程序将使用 t2 作为查找 t1 的方法,并为我提供一个输出 csv 文件,该文件为我提供所有 A 参数以及替换species_a、species_b 和中的 ionic species_c 以及在 t2 中分配给它们的数值。如果species_c中没有值,那么它应该返回-1。最终表格看起来与此类似:t3。

之所以采用这种复杂的方法,是因为我积累的数据库的格式与我正在使用的软件的格式不同。我无法简单地将数据库 ionic 更改为 t2 中的数字,因为每次使用软件开始新的运行时,数字的分配都会根据我在系统中考虑的 Material 而变化。

最佳答案

我认为你应该看看 pandas 库。

http://pandas.pydata.org/pandas-docs/stable/io.html#io-read-csv-table

有更简洁的方法可以做到这一点(您可以创建一个字典并将列中的值重新映射为 ID),但对于您的问题似乎是关于连接数据,所以这里是一个示例pandas 可以加入 .csv 文件:

df1 = pd.read_csv('../path/t1.csv')
df2 = pd.read_csv('../path/t2.csv')

combined = pd.merge(df1, df2, how='left', left_on='species_a', right_on='aq_species')

combined = pd.merge(combined, df2, how='left', left_on='species_b', right_on='aq_species')

combined = pd.merge(combined, df3, how='left', left_on='species_c', right_on='aq_species')

#this will output 3 ion_id columns which you can then rename

combined.rename(columns={'ion_id' : 'species_a_id', 'ion_id_x' : 'species_b_id', 'ion_id_y' : 'species_c_id'}, inplace=True)

combined.to_csv('../path/t3.csv', index=False)

关于python - 使用两个 CSV 文件进行 CSV 查找并生成新文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40407088/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com