![](/img/trans.png)
[英]Write specific rows from pandas dataframe to csv file while iterating through dataframe
[英]Python: Writing to CSV file from iterating through Pandas Dataframe
我是Python的新手。 如何在迭代DataFrame時寫入CSV文件?
readCSV1 = pd.read_csv(r'ProductDetails1.csv')
df1 = DataFrame(readCSV1)
for index, row in df1.iterrows():
print(index, row['SKU'], row['SKU'],row['Title'],row['Cost'],row['Weight
Value'],row['Weight Unit']...............)
我正在迭代包含許多列的大型csv文件,但是我希望能夠限制最終csv文件中的列以及放入其他參數。 控制台的打印輸出是正確的,但是我無法確定如何最好地將其打印到新的csv文件,因為我將執行許多其他功能,並且不想簡單地編輯數據幀本身。
您不應該逐行寫入csv文件。 這是非常低效的。 您應該將數據幀清理/限制為要寫入的內容,然后一次調用pd.DataFrame.to_csv()
。
例如:
df = pd.read_csv(r'ProductDetails1.csv')
#Refine your dataframe here
refined_df = df[['SKU','Title','Close','Weight Value','Weight Unit']]
refined_df.to_csv(r'ProductDetails1.csv', index=False)
我希望能夠限制最終csv文件中的列以及其他參數。
在編寫 CSV文件時不要進行這些調整。 在導出為CSV 之前,請在數據框中進行調整。 然后使用專門構建的pd.DataFrame.to_csv
方法。
例如,您可以在導出之前按特定順序選擇特定列:
df = df[['SKU', 'SKU', 'Title', 'Cost']]
df.to_csv('file.csv', index=False)
要“放入其他參數”,請通過適當的邏輯創建新列。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.