猿问

将列添加到现有 CSV 文件

我正在尝试将新列添加到现有的 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'])

      

有什么办法可以有效地做到这一点吗?


白板的微信
浏览 77回答 1
1回答

HUWWW

您可以使用该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)
随时随地看视频慕课网APP

相关分类

Python
我要回答