对于index.csv
文件,其第四列有十个数字,范围从1
- 5
。每个数字都可以视为一个索引,每个索引对应一个filename.csv
中的数字数组。
filename.csv
的行号代表索引,每行有三个数字。我的问题是使用嵌套循环将filename.csv
中的数字转移到index.csv
。
from numpy import genfromtxt
import numpy as np
import csv
data1 = genfromtxt('filename.csv', delimiter=',')
data2 = genfromtxt('index.csv', delimiter=',')
f = open('index.csv','wb')
write = csv.writer(f, delimiter=',',quoting=csv.QUOTE_ALL)
for row in data2:
for ch_row in data1:
if ( data2[row,3] == ch_row ):
write.writerow(data1[data2[row,3],:])
例如,index.csv
的第四列包含1,2,5,3,4,1,4,5,2,3
和filename.csv
包含:
# filename.csv
20 30 50
70 60 45
35 26 77
93 37 68
13 08 55
我需要的是将索引行从filename.csv
写入index.csv
并将这些数字存储在第5,第6和第7列:
# index.csv
# 4 5 6 7
... 1 20 30 50
... 2 70 60 45
... 5 13 08 55
... 3 35 26 77
... 4 93 37 68
... 1 20 30 50
... 4 93 37 68
... 5 13 08 55
... 2 70 60 45
... 3 35 26 77
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
你需要缩进最后两行。此外,看起来您正在写入您正在阅读的文件。