我有一个看起来像这样的csv文件
34512340,1
12395675,30
56756777,30
90673412,45
12568673,25
22593672,25
我希望能够在python之后编辑数据,然后保存csv。
有人知道我怎么能这样做吗? 下面的这段代码将写一个新行,但不能编辑:
f = open("stockcontrol","a")
f.write(code)
答案 0 :(得分:1)
这是一个示例,它向第二列添加1:
import csv
with open('data.csv') as infile, open('output.csv', 'wb') as outfile:
reader = csv.reader(infile)
writer = csv.writer(outfile)
for row in reader:
# Transform the second column, which is row[1]
row[1] = int(row[1]) + 1
writer.writerow(row)
csv
模块正确解析CSV文件 - 强烈推荐int(row[1])
如果您真的想要编辑文件"就位",请使用fileinput
模块:
import fileinput
for line in fileinput.input('data.csv', inplace=True):
fields = line.strip().split(',')
fields[1] = str(int(fields[1]) + 1) # "Update" second column
line = ','.join(fields)
print line # Write the line back to the file, in place
答案 1 :(得分:0)
您可以使用python pandas
编辑所需的列,例如将列号增加n
:
import pandas
data_df = pandas.read_csv('input.csv')
data_df = data_df['column2'].apply(lambda x: x+n)
print data_df
用1
添加n
替换1
。