簡體   English   中英

使用 Python 將列添加到現有的 CSV 文件

[英]Add a Column to an existing CSV file with Python

我正在嘗試使用 python 向現有的 csv 文件添加新的列標題和值。 我查找的所有內容都將標題附加到最后一列的最后一行。 這就是我希望我的結果本質上是什么。

Header Header2 Header3 NewHeader Value Value2 Value3 NewValue

我目前得到的是:

Header   Header2   Header3
Value    Value2    Value3**NewHeader
NewValue`

這是我的代碼:

import csv
  with open('filename.csv', 'a') as csvfile:
  fieldnames = ['pageviewid']
  writer = csv.DictWriter(csvfile, fieldnames=fieldnames)

  writer.writeheader()
  writer.writerow({'pageviewid': 'Baked'})
  writer.writerow({'pageviewid': 'Lovely'})
  writer.writerow({'pageviewid': 'Wonderful'})

如果使用熊貓是一種選擇:

import pandas as pd
df = pd.read_csv('filename.csv')
new_column = pd.DataFrame({'new_header': ['new_value_1', 'new_value_2', 'new_value_3']})
df = df.merge(new_column, left_index = True, right_index = True)
df.to_csv('filename.csv', index = False)

最簡單的方法是重寫到輸出文件

import csv
reader = csv.reader(open('filename.csv', 'r'))
writer = csv.writer(open('output.csv', 'w'))
headers = reader.next()
headers.append("Brand New Awesome Header")
writer.writerow(headers)
for row in reader:
    row.append(new data for my new header)
    writer.writerow(row)

暫無
暫無

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

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