将CSV文件转换为SDF时,如何忽略某些列?

时间:2019-07-23 04:01:58

标签: python sdf

我有一个CSV文件,并想将其转换为SDF。我还想在转换文件格式之前删除两列。如何实现呢?

CSV文件具有四列:ID,分子,SMILES,minimizedAffinity。 但是我想要生成的SDF文件仅需要两列:即分子和MinimumAffinity。

使用此功能时:

PandasTools.AddMoleculeColumnToFrame(my_frame_sorted, 'Molecule', 'minimizedAffinity')

显示类型错误:

TypeError: No registered converter was able to produce a C++ rvalue of type std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > from this Python object of type Mol

如何解决这个问题?

file_out_path = "./data/compaund_docked_out_sorted.sdf"

PandasTools.AddMoleculeColumnToFrame(my_frame_sorted, 'Molecule', 'minimizedAffinity')
PandasTools.WriteSDF(my_frame_sorted, file_out_path, molColName='Molecule', properties=list(my_frame_sorted.columns))

我需要一个只有'Molecule'和'minimizedAffinity'的SDF文件。

0 个答案:

没有答案