pyrolite.comp.aggregate
- pyrolite.comp.aggregate.get_full_column(X: ndarray)[source]
Returns the index of the first array column which contains only finite numbers (i.e. no missing data, nan, inf).
- Parameters
X (
numpy.ndarray
) – Array for which to find the first full column within.- Returns
Index of the first full column.
- Return type
- pyrolite.comp.aggregate.weights_from_array(X: ndarray)[source]
Returns a set of equal weights with size equal to that of the first axis of an array.
- Parameters
X (
numpy.ndarray
) – Array of compositions to produce weights for.- Returns
Array of weights.
- Return type
- pyrolite.comp.aggregate.nan_weighted_mean(X: ndarray, weights=None)[source]
Returns a weighted mean of compositions, where weights are renormalised to account for missing data.
- Parameters
X (
numpy.ndarray
) – Array of compositions to take a weighted mean of.weights (
numpy.ndarray
) – Array of weights.- Returns
Array mean.
- Return type
- pyrolite.comp.aggregate.compositional_mean(df, weights=[], **kwargs)[source]
Implements an aggregation using a compositional weighted mean.
- Parameters
df (
pandas.DataFrame
) – Dataframe of compositions to aggregate.weights (
numpy.ndarray
) – Array of weights.- Returns
Mean values along index of dataframe.
- Return type
- pyrolite.comp.aggregate.nan_weighted_compositional_mean(X: ndarray, weights=None, ind=None, renorm=True, **kwargs)[source]
Implements an aggregation using a weighted mean, but accounts for nans. Requires at least one non-nan column for ALR mean.
When used for internal standardisation, there should be only a single common element - this would be used by default as the divisor here. When used for multiple-standardisation, the [specified] or first common element will be used.
- Parameters
X (
numpy.ndarray
) – Array of compositions to aggregate.weights (
numpy.ndarray
) – Array of weights.ind (
int
) – Index of the column to use as the ALR divisor.renorm (
bool
,True
) – Whether to renormalise the output compositional mean to unity.- Returns
An array with the mean composition.
- Return type
- pyrolite.comp.aggregate.cross_ratios(df: DataFrame)[source]
Takes ratios of values across a dataframe, such that columns are denominators and the row indexes the numerators, to create a square array. Returns one array per record.
- Parameters
df (
pandas.DataFrame
) – Dataframe of compositions to create ratios of.- Returns
A 3D array of ratios.
- Return type
- pyrolite.comp.aggregate.np_cross_ratios(X: ndarray, debug=False)[source]
Takes ratios of values across an array, such that columns are denominators and the row indexes the numerators, to create a square array. Returns one array per record.
- Parameters
X (
numpy.ndarray
) – Array of compositions to create ratios of.- Returns
A 3D array of ratios.
- Return type
- pyrolite.comp.aggregate.standardise_aggregate(df: DataFrame, int_std=None, fixed_record_idx=0, renorm=True, **kwargs)[source]
Performs internal standardisation and aggregates dissimilar geochemical records. Note: this changes the closure parameter, and is generally intended to integrate major and trace element records.
- Parameters
df (
pandas.DataFrame
) – Dataframe of compositions to aggregate of.int_std (
str
) – Name of the internal standard column.fixed_record_idx (
int
) – Numeric index of a specific record’s for which to retain the internal standard value (e.g for standardising trace element data).renorm (
bool
,True
) – Whether to renormalise to unity.- Returns
A series representing the internally standardised record.
- Return type