【发布时间】:2013-11-28 09:49:47
【问题描述】:
我有一个包含大量数据、22 列和 10000 行的 csv 文件。 第一行是标题,所有其他行是数据。 我从文件中读取。 (只是阅读,我不想更改原始文件) 现在我想通过标题名称减少列数并仅保存 3 列并保存它。 cols 的顺序可以在文件之间更改,有时“LUX” col 将在 col 编号 5 中,有时在 col 编号 20 或 8 中,等等。 到目前为止,我得到了这个:
with open('test.csv', 'rb') as csvfile:
spamreader = csv.reader(csvfile, delimiter=',', quotechar='|') # open the csv file
medianGoodPixels = [] #vector to pixels
Lux = [] #vector to LUX
sdVer = [] # vector to the version
NewCsvTable = [] #will be a matrix with 3 cols, LUX, pixels, and version
for row in spamreader:
if row == "LUX":
#Here I'm stuck
我意识到像这样的行,将在每次迭代中给出所有行,所以在第二次迭代中,它只是第二行的数据。 我想我需要以某种方式使用 2 个循环,但不知道具体如何。
谢谢。
【问题讨论】: