Python 将第三列添加到现有CSV
我有一个CSV文件,有两列(x,y)和5653行,格式如下Python 将第三列添加到现有CSV,python,csv,Python,Csv,我有一个CSV文件,有两列(x,y)和5653行,格式如下 0,0 1,0 2,0 3,0 4,0 5,0 .... 102,0 102,1 101,1 .... 0,1 0,2 1,2 .... 0,0,-89 1,0,-89 2,0,-89 3,0,-89 4,0,-90 5,0,-90 6,0,-89 7,0,-89 8,0,-89 9,0,-89 现在我想在另一个csv中添加第三列,其中包含测量值,如-89等,这些是平均值。 这也是5653行,它是该文件的第一列吗? 现在我如何读取第
0,0
1,0
2,0
3,0
4,0
5,0
....
102,0
102,1
101,1
....
0,1
0,2
1,2
....
0,0,-89
1,0,-89
2,0,-89
3,0,-89
4,0,-90
5,0,-90
6,0,-89
7,0,-89
8,0,-89
9,0,-89
现在我想在另一个csv中添加第三列,其中包含测量值,如-89等,这些是平均值。
这也是5653行,它是该文件的第一列吗?
现在我如何读取第一个文件,读取第二个文件,然后像这样放置
0,0
1,0
2,0
3,0
4,0
5,0
....
102,0
102,1
101,1
....
0,1
0,2
1,2
....
0,0,-89
1,0,-89
2,0,-89
3,0,-89
4,0,-90
5,0,-90
6,0,-89
7,0,-89
8,0,-89
9,0,-89
因此,我希望在一个CSV中的值相同,您可以使用不需要安装任何第三方库的模块。您可以只使用两个读卡器:
import csv
with open('in1.csv') as fin1:
with open('in2.csv') as fin2:
with open('out.csv') as fout:
r1 = csv.reader(fin1) # iterator over lists of strings
r2 = csv.reader(fin2)
w = csv.reader(fout)
for row1, row2 in zip(r1, r2):
w.writerow(row1 + row2[:1]) # row from 1 + first column from 2
您可以使用构建的库来处理表格数据。 典型工作流程:
import pandas as pd
df1 = pd.read_csv("your_path") # df is a shorthand for dataframe, a name for tabular data.
df2 = pd.read_csv("csv2")
# concanating: http://pandas.pydata.org/pandas-docs/stable/merging.html
result = pd.concat([df1, df2], axis=1) # join by row, not by column
result.to_csv("path")
你到底停留在哪一部分?我可以写文件,但我不知道如何在这条线索上附加一列
结果。to_csv(“out.csv”)
可以清空,但现在我得到了一个csv文件,输出如下10,11,0,-89.0
我能摆脱索引吗?有一个选项可以选择它的结果。to_csv(“out.csv”),index=False)
感谢您的帮助!谢谢,这也行,但我更喜欢和熊猫一起工作