我正在尝试在现有csv文件的第二列(紧随第一列(ID)之后)添加新列及其对应的值。 我希望新列的名称为“ date”,值应为实际日期。例如,现在我有一个数据集,如下所示:
ID age gender income
A 20 male 20000
B 43 female 60000
C 35 female 50000
D 51 male 90000
所需的输出如下:
ID date age gender income
A 20181210 20 male 20000
B 20181210 43 female 60000
C 20181210 35 female 50000
D 20181210 51 male 90000
由于我不是python专家(初学者),因此我搜索了很多帖子并收集了适用于我的情况的所有必要信息,并在下面提供了代码。但是这段代码给出的输出如下:
ID age gender income 20181210
A 20 male 20000 20181210
B 43 female 60000 20181210
C 35 female 50000 20181210
D 51 male 90000 20181210
我的问题是: 1.如何添加列名“日期”? 2.如何在第二列添加新列? (特别是这个,我很难找到任何相关答案。)
这是我的代码:
file_r = open("read.csv", "r")
file_w = open("write.csv", "w")
date = "20181210"
for line in file_r:
li = line.rstrip().split(",")
li.append(date)
out_str = ""
for j in li:
out_str += j + ","
out_str = out_str[0:-1] + "\n"
file_w.write(out_str)
file_r.close()
file_w.close()
我已经搜索了很多小时,现在我很沮丧。 任何帮助将不胜感激!
答案 0 :(得分:0)
您可以在熊猫中做到这一点。可能不是大文件的超级表现...
import pandas as pd
df = pd.read_csv("read.csv")
df['date'] = "20181210"
df = df[['ID', 'date', 'age', 'gender', 'income']]
df.to_csv("write.csv", index=False)