簡體   English   中英

將列添加到現有 CSV 文件

[英]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)

這里詳細介紹了 read_csv 方法

這里有關於 to_csv 方法的詳細信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM