そのため、Python で CSV モジュールを使用して、2 つの Excel ファイルから一部の列のみからデータを取得しようとしています。私はプログラミングが初めてなので、非常に愚かな間違いを犯した可能性があります。ご容赦ください...
これはどのように見えるかです:
import sys
import csv
##functions
resultsdir = "/blah"
filename1=sys.argv[1]
filename2=sys.argv[2]
out = open(sys.argv[3],"w")
#filename1,filename2 = "blub", "blub2"
reader1 = csv.reader(open(resultsdir+"/"+filename1+".csv"), delimiter= '\t')
reader2 = csv.reader(open(resultsdir+"/"+filename2+".csv"), delimiter= '\t')
fields1 = reader1.next()
fields2 = reader2.next()
CNVs1 = dict()
CNVs2 = dict()
今、2 つの Excel ファイルから 3 つの列からデータを取得したいのですが、これは私がしたことです:
for row in reader1:
start = row[4] #start being the title of the 5th column, this is probably where I went wrong...
end = row[5]
BF = float(row[9])
CNVs1[chr].append([int(start),int(end),BF])
そしてリーダー2についても同じです。実行すると、次のエラー メッセージが表示されます。
start = row[4]
list index out of range
この場合、それが何を意味するのかわかりません。前述したように、私はこれに慣れていないので、本当に単純なことかもしれません。何か案は?