如果它们符合某些条件,我正在尝试从文件中提取某些行。具体来说,列 [3] 需要以 Chr3: 开头,列 [13] 需要为“是”。
以下是匹配和不匹配条件的行示例:
XLOC_004170 XLOC_004170 - Ch3:14770-25031 SC_JR32_Female SC_JR32_Male OK 55.8796 9.2575 -2.59363 -0.980118 0.49115 0.897554 no XLOC_004387 XLOC_004387 - Ch3:3072455-3073591 SC_JR32_Female SC_JR32_Male OK 0 35.4535 inf -nan 5e-05 0.0149954 yes
我使用的python脚本是:
with open(input_file) as fp: # fp is the file handle
for line in fp: #line is the iterator
line=line.split("\t")
locus = str(line[3])
significance = str(line[13])
print(locus)
print(significance)
if (re.match('Chr3:[0-9]+-[0-9]+',locus,flags=0) and re.match('yes',significance,flags=0)):
output.write(("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n")%(line[0],line[1],line[2],line[3],line[4],line[5],line[6],line[7],line[8],line[9],line[10],line[11],line[12],line[13]))
如果有人能解释为什么这个脚本没有返回输出,我将不胜感激。