PVAnalytics is a python library that supports analytics for PV systems. It provides functions for quality control, filtering, and feature labeling and other tools supporting the analysis of PV system-level data.
PVAnalytics is available at PyPI
and can be installed using pip:
pip install pvanalytics
Documentation and example usage is available at pvanalytics.readthedocs.io.
The functions provided by PVAnalytics are organized in modules based
on their anticipated use.  The structure/organization below is likely
to change as use cases are identified and refined and as package
content evolves.  The functions in quality and
features take a series of data and return a series of booleans.
For more detailed descriptions, see our
API Reference.
- 
qualitycontains submodules for different kinds of data quality checks.- data_shiftscontains quality checks for detecting and isolating data shifts in PV time series data.
- irradianceprovides quality checks for irradiance measurements.
- weatherhas quality checks for weather data (for example tests for physically plausible values of temperature, wind speed, humidity, etc.)
- outlierscontains different functions for identifying outliers in the data.
- gapscontains functions for identifying gaps in the data (i.e. missing values, stuck values, and interpolation).
- timequality checks related to time (e.g. timestamp spacing)
- utilgeneral purpose quality functions.
 
- 
featurescontains submodules with different methods for identifying and labeling salient features.- clippingfunctions for labeling inverter clipping.
- clearskyfunctions for identifying periods of clear sky conditions.
- daytimefunctions for for identifying periods of day and night.
- orientationfunctions for labeling data as corresponding to a rotating solar tracker or a fixed tilt structure.
- shadingfunctions for identifying shadows.
 
- 
systemidentification of PV system characteristics from data (e.g. nameplate power, orientation, azimuth)
- 
metricscontains functions for computing PV system-level metrics