使用Pandas追加數據到Excel文件

一、Pandas追加數據到Excel不覆蓋

如果要向已有的Excel文件中追加數據時,要確保原有數據的不被覆蓋。使用Pandas中的ExcelWriter對象可以實現向Excel文件追加數據。

import pandas as pd
from openpyxl import load_workbook

# 載入已有的Excel文件
book = load_workbook('file.xlsx')
writer = pd.ExcelWriter('file.xlsx', engine='openpyxl') 
writer.book = book

# 查找Sheet名
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

# 在Sheet1中寫入數據
df.to_excel(writer, "Sheet1", index=False)

# 關閉寫入流
writer.save()

二、Pandas追加數據到CSV

Pandas中的to_csv方法能夠將DataFrame數據寫入到CSV文件中。其中mode參數可以控制寫入的方式,’a’表示追加到已有文件中而不覆蓋原有數據。

import pandas as pd

# 創建一個包含ABC列的DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 將數據追加到csv文件中
with open('file.csv', 'a') as f:
    df.to_csv(f, header=f.tell()==0, index=False, mode='a')

三、Pandas向CSV文件追加數據

Pandas中的read_csv函數可以讀取CSV文件,直接讀入然後操作DataFrame就可以直接向文件中追加數據。

import pandas as pd

# 讀入已有的CSV文件
df = pd.read_csv('file.csv', header=0)

# 追加新數據
new_data = {'A': 10, 'B': 20, 'C': 30}
df = df.append(new_data, ignore_index=True)

# 將新數據寫回CSV文件中
df.to_csv('file.csv', mode='a', index=False, header=False)

四、Pandas寫入Excel

Pandas提供的DataFrame.to_excel方法可以將數據寫入Excel文件中。如果要追加數據到已有的Excel文件中,要使用ExcelWriter對象並將已有的Excel文件載入進來,然後將DataFrame寫入到對應的Sheet中。

import pandas as pd

# 創建DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 將DataFrame寫入Excel文件中
df.to_excel('file.xlsx', sheet_name='Sheet1', index=False)

五、Pandas往Excel追加數據

要在已有的Excel文件中追加數據,方法與追加數據到CSV文件類似,通過ExcelWriter對象將已有的Excel文件載入進來,並將DataFrame寫入到對應的Sheet中。

import pandas as pd
from openpyxl import load_workbook

# 載入已有的Excel文件
book = load_workbook('file.xlsx')

# 創建DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 將DataFrame追加到Excel文件中
writer = pd.ExcelWriter('file.xlsx', engine='openpyxl') 
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
df.to_excel(writer, "Sheet1", index=False)
writer.save()

六、Pandas的DataFrame追加數據

向DataFrame中追加數據可以使用DataFrame.append方法。如果數據量比較大,為了防止內存不足,可以使用循環的方式追加數據。

import pandas as pd

# 創建DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 追加新數據
new_data = {'A': 10, 'B': 20, 'C': 30}
df = df.append(new_data, ignore_index=True)

七、Pandas to_csv追加

使用to_csv方法將DataFrame寫入CSV文件時,可以通過mode參數控制寫入的方式。’a’表示追加文件而不覆蓋原有的數據。

import pandas as pd

# 創建DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 向已有的CSV文件中追加新數據
new_data = {'A': 10, 'B': 20, 'C': 30}
df.append(new_data, ignore_index=True).to_csv('file.csv', mode='a', header=False, index=False)

八、Pandas追加寫入

要向已有的Excel文件中追加數據,要通過ExcelWriter對象將已有的Excel文件載入進來,然後將DataFrame追加到對應的Sheet中。寫回時使用append寫入方式。

import pandas as pd
from openpyxl import load_workbook

# 載入已有的Excel文件
book = load_workbook('file.xlsx')

# 創建DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})

# 將DataFrame追加到Excel文件中
with pd.ExcelWriter('file.xlsx', engine='openpyxl', mode='a') as writer:
    writer.book = book
    df.to_excel(writer, sheet_name='Sheet1', header=False, index=False)

九、Pandas CSV追加

通過Pandas的read_csv方法將CSV文件讀入DataFrame,並使用append方法向DataFrame追加新數據,最後再將DataFrame寫入回原CSV文件中。

import pandas as pd

# 將CSV文件讀入DataFrame
df = pd.read_csv('file.csv', header=0)

# 追加新數據
new_data = {'A': 10, 'B': 20, 'C': 30}
df = df.append(new_data, ignore_index=True)

# 將DataFrame寫回CSV文件中
df.to_csv('file.csv', mode='a', header=False, index=False)

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/311178.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-05 13:23
下一篇 2025-01-05 13:23

相關推薦

發表回復

登錄後才能評論