uf3.data.io.prepare_dataframe_from_lists¶
- prepare_dataframe_from_lists(geometries: List[ase.atoms.Atoms], prefix: Optional[str] = None, energies: Optional[List[float]] = None, forces: Optional[List[numpy.ndarray]] = None, atoms_key: str = 'geometry', energy_key: str = 'energy', force_key: str = 'force', size_key: str = 'size', copy: bool = True) pandas.core.frame.DataFrame[source]¶
Convenience function for arranging data into pandas DataFrame with expected column names. Extracts energies and forces from provided ase.Atoms objects if unspecified. If specified, adds/overwrites energies and/or forces in ase.Atoms objects via info and arrays attributes. Length of geometries, energies, and forces must match.
- Parameters
geometries (list) – list of ase.Atoms configurations.
prefix (str) – prefix for DataFrame index. e.g. “bulk” -> [bulk_0, bulk_1, bulk_2, …]
energies (list or np.ndarray) – vector of energy for each geometry.
forces (list) – list of n x 3 arrays of forces for each geometry.
atoms_key (str) – column name for geometries, default “geometry”. Modify when parsed geometries are part of a larger pipeline.
energy_key (str) – column name for energies, default “energy”.
force_key (str) – identifier for forces, default “force”.
size_key (str) – column name for number of atoms per geometry, default “size”.
copy (bool) – copy geometries, energies and forces before modification.
- Returns
- standard dataframe with columns
[atoms_key, energy_key, fx, fy, fz]
- Return type
df (pandas.DataFrame)