Post-processing API
Post-processing is a flat set of top-level functions grouped into four namespaces. Each call takes a DataFrame (or a few), runs one calculation and returns a DataFrame or a dict — nothing is written to disk.
| Namespace | Page | Covers |
|---|---|---|
AeroViz.size |
size | psd_stats, psd_distributions, merge_psd, and the SizeDist class |
AeroViz.chemistry |
chemistry | mass reconstruction, volumes and refractive index, kappa, partitioning, OC/EC, ISORROPIA |
AeroViz.optical |
optical | IMPROVE, Mie (bulk, lognormal, core-shell, angular), gas extinction, RI retrieval, brown carbon |
AeroViz.voc |
voc | voc_potentials (OFP / SOAP / LOH) |
Every function is also importable from the top level (from AeroViz import
reconstruct_mass). Worked usage lives in the guide:
Post-Processing Functions and the four Examples
pages.
DataProcess(...) is deprecated
The DataProcess(method=..., path_out=...) factory and its method
classes (Chemistry, Optical, SizeDistr, VOC) still exist but emit a
DeprecationWarning and will be removed. The migration table below maps
every legacy method to its replacement.
Migrating from DataProcess
| Legacy call | Replacement |
|---|---|
DataProcess('SizeDistr').basic(df) |
psd_stats(df) — statistics under ['other'] |
DataProcess('SizeDistr').distributions(df) |
psd_distributions(df) |
DataProcess('SizeDistr').merge_SMPS_APS(smps, aps) |
merge_psd(smps, aps, version=1) |
DataProcess('SizeDistr').merge_SMPS_APS_v2(smps, aps) |
merge_psd(smps, aps, version=2) |
DataProcess('SizeDistr').merge_SMPS_APS_v3(smps, aps) |
merge_psd(smps, aps, version=3) |
DataProcess('SizeDistr').merge_SMPS_APS_v4(smps, aps, pm25) |
merge_psd(smps, aps, df_pm25=pm25, version=4) |
DataProcess('SizeDistr').dry_psd(df, df_gRH) |
SizeDist(df).to_dry(df_gRH) |
DataProcess('SizeDistr').extinction_distribution(df, df_RI) |
SizeDist(df).to_extinction(df_RI, method='internal') or mie(df, ri, distribution=True) |
DataProcess('SizeDistr').extinction_full(df, df_RI) |
mie(df, ri) |
DataProcess('Chemistry').ReConstrc_basic(df) |
reconstruct_mass(df) |
DataProcess('Chemistry').volume_average_mixing(df_volume, df_alwc) |
volume_ri(df_volume, df_alwc=df_alwc) |
DataProcess('Chemistry').gRH(df_volume, df_alwc) |
growth_factor(df_volume, df_alwc) |
DataProcess('Chemistry').kappa(df, diameter) |
kappa(df, diameter=...) |
DataProcess('Chemistry').Partition(df) |
partition_ratios(df) |
DataProcess('Chemistry').OCEC_basic(df_lcres, df_mass) |
split_oc_ec(df_lcres, df_mass=...) |
DataProcess('Chemistry').ISOROPIA(df) |
isoropia(df_ions, df_met) |
DataProcess('Optical').basic(df_sca, df_abs, ...) |
optical_basic(df_sca, df_abs, ...) |
DataProcess('Optical').IMPROVE(df_mass, df_RH, method) |
improve(df_mass, df_RH, method=...) |
DataProcess('Optical').Mie(df_psd, df_m) |
mie(df_psd, df_m) |
DataProcess('Optical').gas_extinction(df_no2, df_temp) |
gas_extinction(df_no2, df_temp) |
DataProcess('Optical').retrieve_RI(df_optical, df_pnsd) |
retrieve_ri(df_optical, df_pnsd) |
DataProcess('Optical').BrC(df_abs, ...) |
brown_carbon(df_abs, ...) |
DataProcess('Optical').scaCoe / .absCoe |
done inside the readers (sca_550, SAE, abs_*, AAE, eBC are reader outputs) |
DataProcess('Optical').derived(...) |
no single replacement — its columns were PG (sca + abs + gas), MAC, Ox (NO₂ + O₃), Vis_cal (Koschmieder visibility), fRH_IMPR, OCEC_ratio, PM1_PM25; compose them from optical_basic, gas_extinction, improve and plain pandas |
DataProcess('VOC').VOC_basic(df) |
voc_potentials(df) |
The legacy factory, for reference only:
AeroViz.dataProcess.DataProcess
Factory function (DEPRECATED) — use the top-level functions instead.
.. deprecated::
DataProcess(...) will be removed in a future release. Each method
on the returned Writer instance now has a direct top-level function
equivalent. Migration cheatsheet::
DataProcess('Chemistry', ...).ReConstrc_basic(df, ...)
→ from AeroViz import reconstruct_mass
reconstruct_mass(df, ...)
DataProcess('Optical', ...).IMPROVE(df_mass, df_RH, method='revised')
→ from AeroViz import improve
improve(df_mass, df_RH, method='revised')
DataProcess('Optical', ...).Mie(df_psd, df_m)
→ from AeroViz import mie
mie(df_psd, df_m)
DataProcess('SizeDistr', ...).merge_SMPS_APS_v4(df_smps, df_aps, df_pm25)
→ from AeroViz import merge_psd
merge_psd(df_smps, df_aps, df_pm25=df_pm25, version=4)
DataProcess('VOC', ...).VOC_basic(df_voc)
→ from AeroViz import voc_potentials
voc_potentials(df_voc)
Sub-namespaces (``AeroViz.chemistry``, ``AeroViz.optical``,
``AeroViz.size``, ``AeroViz.voc``) are also supported. The new
functions return DataFrames/dicts directly — pass ``df.to_csv(...)``
yourself if you want files written.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
method
|
str
|
The processing method to use. Must be one of: 'Chemistry', 'Optical', 'SizeDistr', or 'VOC'. |
required |
path_out
|
Path
|
Path where processed output files will be saved. |
required |
excel
|
bool
|
Whether to save output in Excel format. |
False
|
csv
|
bool
|
Whether to save output in CSV format. |
True
|
Returns:
| Type | Description |
|---|---|
object
|
Instance of the selected processing class initialized with the provided parameters. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If the specified method name is not in the supported methods list. |
Examples: