我的代码如下:
import csv
with open('Remarks_Drug.csv', newline='', encoding ='utf-8') as myFile:
reader = csv.reader(myFile)
for row in reader:
product = row[0].lower()
filename = row[1]
product_patterns = ', '.join([i.split("+")[0].strip() for i in product.split(",")])
print(product_patterns, filename)
其输出如下:(其中覆膜标签应为一列,文件名应为另一列)
film-coated tablet RECD outcome AUBAGIO IAIN-21 AoR.txt
solution for injection 093 Acceptance NO Safety profil.txt
我想将此输出到一个csv文件,其中一列为product_patterns,另一列为filename。我编写了以下代码,但仅最后一行被附加。谁能帮我在这里循环播放。我写的代码是:
with open ('drug_output.csv', 'a') as csvfile:
fieldnames = ['product_patterns', 'filename']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writerow({'product_patterns':product_patterns, 'filename':filename})
答案 0 :(得分:0)
根据您可以使用的环境,使用更专用的程序来解决您的问题可能更实际。
在您的情况下,特别是pandas package似乎很有用。 然后,您可以使用以下命令加载csv:
import pandas as pd
df=pd.read_csv(file_path)
进行必要的操作后,您可以使用再次保存
df.to_csv(file_path)
这将为您节省很多在逐行解析时通常会出现的问题,并且还应该稍微提高性能。如果您需要进行一些数据操作,无论如何,Pandas是一个非常好的软件包。