批处理转换数据

如果你对目前的问题没有特殊想法或迷茫,那就试一试BatchFeature,它使用pymatgen中的特征。 我们可以使用三种输入方式: 1.结构数据;2.化合物成分;3.元素列表。

  • 转换结构数据

>>> from featurebox.featurizers.batch_feature import BatchFeature
>>> bf = BatchFeature(data_type="structures", return_type="df")
>>> data = bf.fit_transform(structure_list)

structures_list 是 pymatgen.Structure 的列表。

../_images/structures0.gif
  • 转换化合物列表

>>> from featurebox.featurizers.batch_feature import BatchFeature
>>> bf = BatchFeature(data_type="compositions")
>>> com = [[{str(i.symbol): 1} for i in structurei.species]  for structurei in structure_list]
>>> #where com is element list
>>> data = bf.fit_transform(com)
../_images/composition0.gif
  • 转换元素列表

>>> from featurebox.featurizers.batch_feature import BatchFeature
>>> bf = BatchFeature(data_type="elements")
>>> aas = [[{str(i.symbol): 1} for i in structurei.species]  for structurei in structure_list]
>>> data = bf.fit_transform(aas)
>>> bf.element_c.search_tp="number"
>>> aas = [[i.specie.Z for i in structure] for structure in structure_list]
>>> data = bf.fit_transform(aas)

注意

It is highly recommended that using this function as a beginner,
Because we can customize more and more powerful converters.

运行一下试试吧 >>d(˙_˙)b<<