ThermoMLDataSet¶
-
class
openff.evaluator.datasets.thermoml.
ThermoMLDataSet
[source]¶ A dataset of physical property measurements created from a ThermoML dataset.
Examples
For example, we can use the DOI 10.1016/j.jct.2005.03.012 as a key for retrieving the dataset from the ThermoML Archive:
>>> dataset = ThermoMLDataSet.from_doi('10.1016/j.jct.2005.03.012')
You can also specify multiple ThermoML Archive keys to create a dataset from multiple ThermoML files:
>>> thermoml_keys = ['10.1021/acs.jced.5b00365', '10.1021/acs.jced.5b00474'] >>> dataset = ThermoMLDataSet.from_doi(*thermoml_keys)
Methods
__init__
()Constructs a new ThermoMLDataSet object.
add_properties
(*physical_properties[, validate])Adds a physical property to the data set.
from_doi
(*doi_list)Load a ThermoML data set from a list of DOIs
from_file
(*file_list)Load a ThermoML data set from a list of files
from_json
(file_path)Create this object from a JSON file.
from_pandas
(data_frame)Constructs a data set object from a pandas
DataFrame
object.from_url
(*url_list)Load a ThermoML data set from a list of URLs
from_xml
(xml, default_source)Load a ThermoML data set from an xml object.
json
([file_path, format])Creates a JSON representation of this class.
merge
(data_set[, validate])Merge another data set into the current one.
parse_json
(string_contents[, encoding])Parses a typed json string into the corresponding class structure.
properties_by_substance
(substance)A generator which may be used to loop over all of the properties which were measured for a particular substance.
properties_by_type
(property_type)A generator which may be used to loop over all of properties of a particular type, e.g.
Converts a PhysicalPropertyDataSet to a pandas.DataFrame object with columns of
validate
()Checks to ensure that all properties within the set are valid physical property object.
Attributes
A list of all of the properties within this set.
The types of property within this data set.
registered_properties
The sources from which the properties in this data set were gathered.
The substances for which the properties in this data set were collected for.
-
classmethod
from_doi
(*doi_list)[source]¶ Load a ThermoML data set from a list of DOIs
- Parameters
doi_list (str) – The list of DOIs to pull data from
- Returns
The loaded data set.
- Return type
-
classmethod
from_url
(*url_list)[source]¶ Load a ThermoML data set from a list of URLs
- Parameters
url_list (str) – The list of URLs to pull data from
- Returns
The loaded data set.
- Return type
-
classmethod
from_file
(*file_list)[source]¶ Load a ThermoML data set from a list of files
- Parameters
file_list (str) – The list of files to pull data from
- Returns
The loaded data set.
- Return type
-
add_properties
(*physical_properties, validate=True)¶ Adds a physical property to the data set.
- Parameters
physical_properties (PhysicalProperty) – The physical property to add.
validate (bool) – Whether to validate the properties before adding them to the set.
-
classmethod
from_json
(file_path)¶ Create this object from a JSON file.
- Parameters
file_path (str) – The path to load the JSON from.
- Returns
The parsed class.
- Return type
cls
-
classmethod
from_pandas
(data_frame: pandas.core.frame.DataFrame) → openff.evaluator.datasets.datasets.PhysicalPropertyDataSet¶ Constructs a data set object from a pandas
DataFrame
object.Notes
All physical properties are assumed to be source from experimental measurements.
Currently this method onlu supports data frames containing properties which are built-in to the framework (e.g. Density).
This method assumes the data frame has a structure identical to that produced by the
PhysicalPropertyDataSet.to_pandas
function.
- Parameters
data_frame – The data frame to construct the data set from.
- Returns
- Return type
The constructed data set.
-
classmethod
from_xml
(xml, default_source)[source]¶ Load a ThermoML data set from an xml object.
- Parameters
- Returns
The loaded ThermoML data set.
- Return type
-
json
(file_path=None, format=False)¶ Creates a JSON representation of this class.
-
merge
(data_set, validate=True)¶ Merge another data set into the current one.
- Parameters
data_set (PhysicalPropertyDataSet) – The secondary data set to merge into this one.
validate (bool) – Whether to validate the other data set before merging.
-
classmethod
parse_json
(string_contents, encoding='utf8')¶ Parses a typed json string into the corresponding class structure.
-
property
properties
¶ A list of all of the properties within this set.
- Type
tuple of PhysicalProperty
-
properties_by_substance
(substance)¶ A generator which may be used to loop over all of the properties which were measured for a particular substance.
- Parameters
substance (Substance) – The substance of interest.
- Returns
- Return type
generator of PhysicalProperty
-
properties_by_type
(property_type)¶ A generator which may be used to loop over all of properties of a particular type, e.g. all “Density” properties.
- Parameters
property_type (str or type of PhysicalProperty) – The type of property of interest. This may either be the string class name of the property or the class type.
- Returns
- Return type
generator of PhysicalProperty
-
property
property_types
¶ The types of property within this data set.
- Type
set of str
-
property
sources
¶ The sources from which the properties in this data set were gathered.
- Type
set of Source
-
property
substances
¶ The substances for which the properties in this data set were collected for.
- Type
set of Substance
-
to_pandas
()¶ Converts a PhysicalPropertyDataSet to a pandas.DataFrame object with columns of
‘Id’
‘Temperature (K)’
‘Pressure (kPa)’
‘Phase’
‘N Components’
‘Component 1’
‘Role 1’
‘Mole Fraction 1’
‘Exact Amount 1’
…
‘Component N’
‘Role N’
‘Mole Fraction N’
‘Exact Amount N’
‘<Property 1> Value (<default unit>)’
‘<Property 1> Uncertainty / (<default unit>)’
…
‘<Property N> Value / (<default unit>)’
‘<Property N> Uncertainty / (<default unit>)’
‘Source’
where ‘Component X’ is a column containing the smiles representation of component X.
- Returns
The create data frame.
- Return type
-
validate
()¶ Checks to ensure that all properties within the set are valid physical property object.
-
classmethod