目的:将药物smiles格式转为fingerprint,储存为csv格式文件
思路:
- 读取csv 文件,通过设置参数,读取某一列数据,并将数据放在一个列表1中
f=pd.read_csv('Smiles.csv',usecols=[2],squeeze=True)
#读取csv文件中的某一列:usecols
#squeeze : boolean, default False.如果文件值包含一列,则返回一个Series
- 新建列表2,对列表1处理,结果放在列表2中
将列表2转换成一个字典,然后再将该字典传入到DataFrame中创建
>>> a =['1','2','3']#列表a
>>> b = ['99','55','46']#列表b
>>> c ={'small':a,'big':b}#合并成一个新的字典c
>>> new = DataFrame(c)#将c传入DataFrame并创建
>>> print new
small big
0 1 99
1 2 55
2 3 46
- 将新的dataframe插入到原dataframe
#dic_fp={'Morgan fingerprint':fp}
#new_df=DataFrame(dic_fp)
#print(new_df)
f1=pd.read_csv('Smiles.csv')
#将新的dataframe插入到f1的最后一列
f1['Morgan fingerprint']=new_df
4.新的df生成新的csv文件
#将f1生成一个新的csv文件
f1.to_csv('pf.csv',index=False,sep=',')
-
总结知识点:
-
读取csv某一列
-
List列表转换为Dataframe
链接:怎样利用Pandas将List列表转换为Dataframe -
Pandas.DataFrame插入列和行
链接:Pandas.DataFrame插入列和行