数据清洗一:
Posted yankeqiang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据清洗一:相关的知识,希望对你有一定的参考价值。
原数据格式:
转换的目标格式:
脚本目的:转换数据的格式,属于数据清洗部分。
脚本逻辑,将文件读取后,将第一列设置为key,第三列设为列表组成的value,建立dict;然后循环dict来统计items两两之间重复的id以及其数目。
#!/usr/bin/python import sys import pandas as pd f1=sys.argv[1] f2=sys.argv[2] t1 = pd.read_excel(f1) t1["geneID"]=t1["geneID"].str.split("/",expand=False) t1.head() t2 = t1.set_index("Description") t3 = t2["geneID"].to_dict() t4=dict() listid=[] for i in t3: for j in t3: if i==j: continue elif [i,j] in listid: continue else: listid.append([i,j]) key=str(i)+"+"+str(j) value=list(set(t3[i]) & set(t3[j])) t4[key]=value out=open(f2,‘w‘) print ("Pathway1","\\t","Pathway2","\\t","Count","\\t","id",file=out) for i in t4.keys(): count=len(t4[i]) if count >0 : c=";".join(t4[i]) p1=i.split("+")[0] p2=i.split("+")[1] print (p1,"\\t",p2,"\\t",count,"\\t",c,file=out) out.close()
利用pandas包对excel表中的内容进行读取:
pd.read_excel() 主要函数解读: io表格具体路径,sheetname 读取表格中的哪个Sheet,可以是整数或Sheet名称,converters 指定将读取内容转换成哪种格式 eg: converters = {0:str}
以上是关于数据清洗一:的主要内容,如果未能解决你的问题,请参考以下文章