【发布时间】:2013-03-22 19:47:57
【问题描述】:
好的,所以我正在学习 Python。但是为了我的学习,我已经做了相当复杂的事情。我正在尝试运行一个脚本来分析 excel 文件中的数据。看起来是这样的:
#!/usr/bin/python
import sys
#lots of functions, not relevant
resultsdir = /home/blah
filename1=sys.argv[1]
filename2=sys.argv[2]
out = open(sys.argv[3],"w")
#filename1,filename2="CNVB_reads.403476","CNVB_reads.403447"
file1=open(resultsdir+"/"+filename1+".csv")
file2=open(resultsdir+"/"+filename2+".csv")
for line in file1:
start.p,end.p,type,nexons,start,end,cnvlength,chromosome,id,BF,rest=line.split("\t",10)
CNVs1[chr].append([int(start),int(end),float(BF)])
for line in file2:
start.p,end.p,type,nexons,start,end,cnvlength,chromosome,id,BF,rest=line.split("\t",10)
CNVs2[chr].append([int(start),int(end),float(BF)])
这些是excel文件中数据列的标题,我想拆分它们,我什至不确定在使用excel文件中的数据时是否需要这样做。
#more irrelevant stuff
out.write(filename1+","+filename2+","+str(chromosome)+","+str(type)+","+str(shared)+"\n")
这是它应该在我的输出中写入的内容,“共享”是我计算出来的,其余的已经在文件中。
好的,现在是我的问题,最后,当我这样调用脚本时:
python script.py CNVB_reads.403476 CNVB_reads.403447 script.csv 在我的shell中
我收到以下错误消息:
start.p,end.p,type,nexons,start,end,cnvlength,chromosome,id,BF,rest=line.split("\t",10)
ValueError: need more than 1 value to unpack
我不知道与数据相关的含义是什么...有什么想法吗?
【问题讨论】:
-
这意味着您的行没有由制表符分隔的 11 个值。它显然只有一个
-
听起来像
line.split("\t",10)只返回一个丢失的元素。 -
标签: python