一、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/n/311178.html
微信扫一扫
支付宝扫一扫