[英]Add columns to existing CSV file
我正在嘗試向現有的 csv 添加新列,該 csv 已經具有如下所示的行和列:
我希望它將所有新列名稱附加到第 4 列之后的列中。
我目前擁有的代碼是將所有新列添加到 csv 的底部:
def extract_data_from_report3():
with open('OMtest.csv', 'a', newline='') as f_out:
writer = csv.writer(f_out)
writer.writerow(
['OMGroup:OMRegister', 'OMGroup', 'OMRegister', 'RegisterType', 'Measures', 'Description', 'GeneratedOn'])
有沒有辦法有效地做到這一點?
您可以使用pandas
庫,而無需遍歷值。 這里有一個例子
new_header = ['OMGroup:OMRegister', 'OMGroup', 'OMRegister', 'RegisterType', 'Measures', 'Description', 'GeneratedOn']
# Import pandas package
import pandas as pd
my_df = pd.read_csv(path_to_csv)
for column_name in new_header:
new_column = [ ... your values ...] #should be a list of your dataframe size
my_df[column_name] = new_column
請記住,新列的大小應與要工作的表的行數相同
如果您只需要添加沒有值的新列,您可以這樣做:
for column_name in new_header:
new_column = ["" for i in range(len(mydf.index))] #should be a list of dataframe size
my_df[column_name] = new_column
然后你可以用這種方式寫回csv:
my_df.to_csv(path_to_csv)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.