我有一個這樣的資料框:
df = pd.DataFrame({'PageNumber': [175, 162, 576], 'new_tags': [['flower architecture people'], ['hair red bobbles'], ['sweets chocolate shop']})
<OUT>
PageNumber new_tags
175 flower architecture people
162 hair red bobbles
576 sweets chocolate shop
我如何從 Pandas DF 中獲取每一行并將其分別存盤在新的 CSV 中。
到目前為止,我有這個,但它似乎沒有奏效。我正在使用 f'strings 根據與回圈資料相關聯的 PageNumber 來命名 csv。
for PageNumber, data in central_edi_posts_grouped.iterrows():
data.to_csv(rf'Grid_tags/grid_{PageNumber}.csv')
uj5u.com熱心網友回復:
您的解決方案實際上很好。你只需要做一些調整。
當您回圈 (df.iterrows()) 時,您將不會獲得 PageNumber 和資料。您將獲得行和頁面資料的索引。此外,您在 f'' 之前有一個 r,應該將其洗掉。
解決這個問題:
import pandas as pd
df = pd.DataFrame({'PageNumber': [175, 162, 576], 'new_tags': [['flower architecture people'], ['hair red bobbles'], ['sweets chocolate shop']]})
for index, data in df.iterrows():
data.to_csv(f'Grid_tags/grid_{data["PageNumber"]}.csv')
uj5u.com熱心網友回復:
不確定預期的輸出是什么,但是如果要保留行,請切片為幀:
# if needed to have PageNumber as index:
central_edi_posts_grouped = central_edi_posts_grouped.set_index('PageNumber')
# then loop
for idx in central_edi_posts_grouped.index:
central_edi_posts_grouped.loc[[idx]].to_csv(rf'Grid_tags/grid_{idx}.csv')
uj5u.com熱心網友回復:
這種代碼變體創建了一個子目錄data_test,并且給定資料幀的每一行都寫入csv帶有標題的單獨檔案。希望這段代碼能幫助你理解f-strings
import pandas as pd
import os
df = pd.DataFrame({'PageNumber': [175, 162, 576], 'new_tags': [['flower architecture people'], ['hair red bobbles'], ['sweets chocolate shop']]})
print(df)
FOLDER_EXPORT = 'data_test'
os.makedirs(FOLDER_EXPORT, exist_ok=True)
for index, row in df.iterrows():
# print( row['PageNumber'], row['new_tags'])
pagenumber = row['PageNumber']
new_tags = ';'.join(row['new_tags'][0].split(' '))
# print(pagenumber, new_tags)
filename_csv = f'./{FOLDER_EXPORT}/grid_{pagenumber}.csv'
with open(filename_csv, mode='w', encoding='utf-8') as wfile:
if wfile.tell() == 0:
wfile.write('pagenumber\tnew_tags\n')
wfile.write(f'{pagenumber}\t{new_tags}\n')
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/468916.html
