aops-apollo-toolaarch64e0681c5ea4ef343422a8a91761d3a668a839b0319bdb8090e2d10610552ec860Small tools for aops-apollo, e.g. updateinfo.xml generatersmalltools for aops-apollo, e.g.updateinfo.xml generaterhttps://gitee.com/openeuler/aops-apolloMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843611-20250917-1047aops-apollo-v2.2.0-1.src.rpm/etc/aops_apollo_tool/updateinfo_config.ini/usr/bin/gen-updateinfoaops-apolloaarch645a50f83517c7ed37e0e1d80a6e8d24020443d2cdd6dc21bf4ff3dde8657ba797Cve management service, monitor machine vulnerabilities and provide fix functions.Cve management service, monitor machine vulnerabilities and provide fix functions.https://gitee.com/openeuler/aops-apolloMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843611-20250917-1047aops-apollo-v2.2.0-1.src.rpm/etc/aops/conf.d/aops-apollo.ymlaops-apollosrceda1a5c4c2a5e625cf08aa71ea67bf8445bce87467588b65d74175d3fe9dc25bCve management service, monitor machine vulnerabilities and provide fix functions.Cve management service, monitor machine vulnerabilities and provide fix functions.https://gitee.com/openeuler/aops-apolloMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843611-20250917-1047aops-ceresaarch648a9167109318cf82400830333c8dc857bbb63ec6061b86cedc0c7fe46c288e76An agent which needs to be adopted in client, it managers some plugins, such as gala-gopher(kpi collection), fluentd(log collection) and so on.An agent which needs to be adopted in client, it managers some plugins, such as gala-gopher(kpi collection), fluentd(log collection) and so on.https://gitee.com/openeuler/aops-ceresMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154aops-ceres-v2.2.0-1.src.rpm/etc/aops/ceres.conf/usr/bin/aops-ceresaops-ceressrcdad9b9b357ba625094a96ae69471b27080e6d77220f68936a6a52048dc045cb3An agent which needs to be adopted in client, it managers some plugins, such as gala-gopher(kpi collection), fluentd(log collection) and so on.An agent which needs to be adopted in client, it managers some plugins, such as gala-gopher(kpi collection), fluentd(log collection) and so on.https://gitee.com/openeuler/aops-ceresMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154aops-hermesaarch6480b9fceeb679edaf5accc9508b60d111a081fe88b49dd8861f7a75a6a0074122Web for an intelligent diagnose frameWeb for an intelligent diagnose framehttps://gitee.com/openeuler/aops-hermesMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843644-20250919-0307aops-hermes-v2.2.0-1.src.rpmaops-hermessrcb3e0b558e56fdce4859b501c0ae16d9103910c934372e6111d5af159faabbd88Web for an intelligent diagnose frameWeb for an intelligent diagnose framehttps://gitee.com/openeuler/aops-hermesMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843644-20250919-0307aops-mcpaarch64732ad97f30e5c3afe429f5a1b5b5718c7c618c83b1ec9721e91f5506244b02e6Aops MCP ServiceAops MCP Service packaged as RPM.https://gitee.com/Victeo/AOPS_MCP_ServerMulanPSL-2.0openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-mcp-1.0.0-1.src.rpm/opt/aops-mcp/venv/bin/Activate.ps1/opt/aops-mcp/venv/bin/activate/opt/aops-mcp/venv/bin/activate.csh/opt/aops-mcp/venv/bin/activate.fish/opt/aops-mcp/venv/bin/aops-mcp/opt/aops-mcp/venv/bin/dotenv/opt/aops-mcp/venv/bin/fastmcp/opt/aops-mcp/venv/bin/httpx/opt/aops-mcp/venv/bin/jsonschema/opt/aops-mcp/venv/bin/markdown-it/opt/aops-mcp/venv/bin/mcp/opt/aops-mcp/venv/bin/pip/opt/aops-mcp/venv/bin/pip3/opt/aops-mcp/venv/bin/pip3.11/opt/aops-mcp/venv/bin/pygmentize/opt/aops-mcp/venv/bin/python/opt/aops-mcp/venv/bin/python3/opt/aops-mcp/venv/bin/python3.11/opt/aops-mcp/venv/bin/typer/opt/aops-mcp/venv/bin/uvicorn/opt/aops-mcp/venv/bin/websockets/usr/bin/aops-mcpaops-mcpsrc63fde58f9cefbfbe92d20d13b3b16650fbeb640215545dfd689c22e832b4e00cAops MCP ServiceAops MCP Service packaged as RPM.https://gitee.com/Victeo/AOPS_MCP_ServerMulanPSL-2.0openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-toolsaarch64d27e20264596f110d02d50a8824955ac30f4bc6a25a4635577776d91aaa22466aops scriptstools for aops, it's about aops deployhttps://gitee.com/openeuler/aops-vulcanusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843556-20250916-1150aops-vulcanus-v2.2.0-1.src.rpmaops-vulcanusaarch64d01186a752944b69919724719c52911e368f3fc53b19cac061f92fdcb282d159A basic tool libraries of aops, including logging, configure and response, etc.A basic tool libraries of aops, including logging, configure and response, etc.https://gitee.com/openeuler/aops-vulcanusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843556-20250916-1150aops-vulcanus-v2.2.0-1.src.rpm/etc/aops/aops-config.ymlaops-vulcanussrc8bc03a312d0583d7aeffdd1baf59aa07a2a00e3bcd5f51d80c3abe08c26a6d4cA basic tool libraries of aops, including logging, configure and response, etc.A basic tool libraries of aops, including logging, configure and response, etc.https://gitee.com/openeuler/aops-vulcanusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843556-20250916-1150aops-zeusaarch648ebde9d8395e2e234ed270c04e5c6170b3415462c27c554c414ab96b7a528dcaA service which is the foundation of aops.Provide one-click aops deployment, service start and stop, hot loading of
configuration files, and database initialization.
Provides: aops-zeushttps://gitee.com/openeuler/aops-zeusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-zeus-v2.2.0-1.src.rpm/usr/bin/aops-cliaops-zeussrce721a13a95b0270f2f4b8ff6d42c4a83bc00cd8399bb9b3eb24c1ad9cdaa8b7fA service which is the foundation of aops.Provide one-click aops deployment, service start and stop, hot loading of
configuration files, and database initialization.
Provides: aops-zeushttps://gitee.com/openeuler/aops-zeusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250async-taskaarch64ebf4427fe4b6cd06e2cd424f82bdb8c95d5687a58f5b802583bd27b4f606fa25A async task of aops.A async task of aops.https://gitee.com/openeuler/aops-zeusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-zeus-v2.2.0-1.src.rpm/etc/aops/crontab.yml/etc/aops/sync-conf.d/instance.properties/etc/aops/sync-conf.d/rdb/cve_fix_task.yml/etc/aops/sync-conf.d/rdb/cve_host_match.yml/etc/aops/sync-conf.d/rdb/cve_rollback_task.yml/etc/aops/sync-conf.d/rdb/domain.yml/etc/aops/sync-conf.d/rdb/domain_conf_info.yml/etc/aops/sync-conf.d/rdb/domain_host.yml/etc/aops/sync-conf.d/rdb/host.yml/etc/aops/sync-conf.d/rdb/host_conf_sync_status.yml/etc/aops/sync-conf.d/rdb/host_group.yml/etc/aops/sync-conf.d/rdb/hotpatch_remove_task.yml/etc/aops/sync-conf.d/rdb/repo.yml/etc/aops/sync-conf.d/rdb/task_host_repo.yml/etc/aops/sync-conf.d/rdb/vul_task.yml/usr/bin/async-taskauthHubaarch6434c570e5146093972183b935d4d4ff7afdce1065d4146fe117e32258d1c914adAuthentication authority based on oauth2authhub is a specialized authentication center built on OAuth2, providing robust authentication and authorization capabilities for secure user access control in your applications..https://gitee.com/openeuler/authHubMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843611-20250917-1047authHub-v2.2.0-3.src.rpm/etc/aops/conf.d/authhub.yml/etc/nginx/conf.d/authhub.nginx.confauthHubsrc183955a7e494f91bd2565af045280079191f8abad87fd13aa812e55bc474900eAuthentication authority based on oauth2authhub is a specialized authentication center built on OAuth2, providing robust authentication and authorization capabilities for secure user access control in your applications..https://gitee.com/openeuler/authHubMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843611-20250917-1047authhub-webaarch64a6853c9dee5f796e012082c2e9c6d41b274a79ecbfa3df0523398f48c40e36f0Authentication authority web based on oauth2Authentication authority web based on oauth2https://gitee.com/openeuler/authHubMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843611-20250917-1047authHub-v2.2.0-3.src.rpmdnf-hotpatch-pluginaarch6459671f6d5ecd2a91e8c939f54036bd113aa369d9ee17227da91a19f23feb046adnf hotpatch plugindnf hotpatch plugin, it's about hotpatch query and fixhttps://gitee.com/openeuler/aops-ceresMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154aops-ceres-v2.2.0-1.src.rpmgala-anteateraarch647f417945d8d5e1c6c6e1ea899f138accac581b965517bb7d5397c333b8bfd6d1A time-series anomaly detection platform for operating system.Abnormal detection module for A-Ops projecthttps://gitee.com/openeuler/gala-anteaterMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843593-20250917-0732gala-anteater-3.0.1-1.src.rpm/etc/gala-anteater/config/gala-anteater.yaml/etc/gala-anteater/config/log.settings.ini/etc/gala-anteater/config/metricinfo.json/etc/gala-anteater/entity/app_entity.json/etc/gala-anteater/entity/pod_entity.json/etc/gala-anteater/entity/vm_entity.json/etc/gala-anteater/module/app_sli_rtt.job.json/etc/gala-anteater/module/container_disruption.job.json/etc/gala-anteater/module/disk_throughput.job.json/etc/gala-anteater/module/jvm_oom.job.json/etc/gala-anteater/module/proc_io_latency.job.json/etc/gala-anteater/module/rca.job.json/etc/gala-anteater/module/slow_node_detection.job.json/etc/gala-anteater/module/sys_io_latency.job.json/etc/gala-anteater/module/sys_nic_loss.job.json/etc/gala-anteater/module/sys_tcp_establish.job.json/etc/gala-anteater/module/sys_tcp_transmission_latency.job.json/etc/gala-anteater/module/usad_model.job.json/usr/bin/gala-anteatergala-anteatersrc81de60947b09a4c6ef79a7a9424893adcde82b2702fee722591cb46323872043A time-series anomaly detection platform for operating system.Abnormal detection module for A-Ops projecthttps://gitee.com/openeuler/gala-anteaterMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843593-20250917-0732gala-inferenceaarch640090906a14d66bdf1d7793638a2b63feebe7e3a39840fe937d8ea5fced14022eCause inference module for gala-ops projectCause inference module for A-Ops projecthttps://gitee.com/openeuler/gala-spiderMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154gala-spider-2.0.1-1.src.rpm/etc/gala-inference/cause-keyword.yaml/etc/gala-inference/ext-observe-meta.yaml/etc/gala-inference/gala-inference.yaml/etc/gala-inference/infer-rule.yaml/usr/bin/gala-inferencegala-opsaarch6465ffd1c446b8e0de1a7f00d0645fdd458426c8cfdd42352ec470205c9c59d7a7gala-anteater/spider/inference installation packageThis package requires gala-anteater/spider/inference, allowing users to install them all at oncehttps://gitee.com/openeuler/gala-spiderMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154gala-spider-2.0.1-1.src.rpmgala-spideraarch6472f91e3c42420a141fe42c8efe1007abbd7b94035c02bd934652d2f523d351e0OS topological graph storage service and cause inference service for gala-ops projectOS topological graph storage service for gala-ops projecthttps://gitee.com/openeuler/gala-spiderMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154gala-spider-2.0.1-1.src.rpm/etc/gala-spider/ext-observe-meta.yaml/etc/gala-spider/gala-spider.yaml/etc/gala-spider/topo-relation.yaml/usr/bin/spider-storagegala-spidersrcec8fe091168d4759244f51138de5e40b09a862aa2db9cc609bc306b6260c1057OS topological graph storage service and cause inference service for gala-ops projectOS topological graph storage service for gala-ops projecthttps://gitee.com/openeuler/gala-spiderMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154python-pandas-flavorsrcd58b85c29182037a7253965e471a4f2fad926a9478e4e6b8f67a0930818d63feThe easy way to write your own Pandas flavor.
**The easy way to write your own flavor of Pandas**
Pandas 0.23 added a (simple) API for registering accessors with Pandas objects.
Pandas-flavor extends Pandas' extension API by:
1. adding support for registering methods as well.
2. making each of these functions backwards compatible with older versions of Pandas.
***What does this mean?***
It is now simpler to add custom functionality to Pandas DataFrames and Series.
Import this package. Write a simple python function. Register the function using one of the following decorators.
***Why?***
Pandas is super handy. Its general purpose is to be a "flexible and powerful data analysis/manipulation library".
**Pandas Flavor** allows you add functionality that tailors Pandas to specific fields or use cases.
Maybe you want to add new write methods to the Pandas DataFrame? Maybe you want custom plot functionality? Maybe something else?
Accessors (in pandas) are objects attached to a attribute on the Pandas DataFrame/Series
that provide extra, specific functionality. For example, `pandas.DataFrame.plot` is an
accessor that provides plotting functionality.
Add an accessor by registering the function with the following decorator
and passing the decorator an accessor name.
```python
import pandas_flavor as pf
@pf.register_dataframe_accessor('my_flavor')
class MyFlavor(object):
def __init__(self, data):
self._data = data
def row_by_value(self, col, value):
"""Slice out row from DataFrame by a value."""
return self._data[self._data[col] == value].squeeze()
```
Every dataframe now has this accessor as an attribute.
```python
import my_flavor
df = pd.DataFrame(data={
"x": [10, 20, 25],
"y": [0, 2, 5]
})
print(df)
df.my_flavor.row_by_value('x', 10)
```
To see this in action, check out [pdvega](https://github.com/jakevdp/pdvega),
[PhyloPandas](https://github.com/Zsailer/phylopandas), and [pyjanitor](https://github.com/ericmjl/pyjanitor)!
Using this package, you can attach functions directly to Pandas objects. No
intermediate accessor is needed.
```python
import pandas_flavor as pf
@pf.register_dataframe_method
def row_by_value(df, col, value):
"""Slice out row from DataFrame by a value."""
return df[df[col] == value].squeeze()
```
```python
import pandas as pd
import my_flavor
df = pd.DataFrame(data={
"x": [10, 20, 25],
"y": [0, 2, 5]
})
print(df)
df.row_by_value('x', 10)
```
The pandas_flavor 0.5.0 release introduced [tracing of the registered method calls](/docs/tracing_ext.md). Now it is possible to add additional run-time logic around registered method execution which can be used for some support tasks. This extension was introduced
to allow visualization of [pyjanitor](https://github.com/pyjanitor-devs/pyjanitor) method chains as implemented in [pyjviz](https://github.com/pyjanitor-devs/pyjviz)
- **register_dataframe_method**: register a method directly with a pandas DataFrame.
- **register_dataframe_accessor**: register an accessor (and it's methods) with a pandas DataFrame.
- **register_series_method**: register a methods directly with a pandas Series.
- **register_series_accessor**: register an accessor (and it's methods) with a pandas Series.
You can install using **pip**:
```
pip install pandas_flavor
```
or conda (thanks @ericmjl)!
```
conda install -c conda-forge pandas-flavor
```
Pull requests are always welcome! If you find a bug, don't hestitate to open an issue or submit a PR. If you're not sure how to do that, check out this [simple guide](https://github.com/Zsailer/guide-to-working-as-team-on-github).
If you have a feature request, please open an issue or submit a PR!
Pandas 0.23 introduced a simpler API for [extending Pandas](https://pandas.pydata.org/pandas-docs/stable/development/extending.html#extending-pandas). This API provided two key decorators, `register_dataframe_accessor` and `register_series_accessor`, that enable users to register **accessors** with Pandas DataFrames and Series.
Pandas Flavor originated as a library to backport these decorators to older versions of Pandas (<0.23). While doing the backporting, it became clear that registering **methods** directly to Pandas objects might be a desired feature as well.[*](#footnote)
<a name="footnote">*</a>*It is likely that Pandas deliberately chose not implement to this feature. If everyone starts monkeypatching DataFrames with their custom methods, it could lead to confusion in the Pandas community. The preferred Pandas approach is to namespace your methods by registering an accessor that contains your custom methods.*
**So how does method registration work?**
When you register a method, Pandas flavor actually creates and registers a (this is subtle, but important) **custom accessor class that mimics** the behavior of a method by:
1. inheriting the docstring of your function
2. overriding the `__call__` method to call your function.https://github.com/Zsailer/pandas_flavorMITopenEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-pandas-flavor-helpnoarch77582d49f4d047f77bdfc7d61a7fc099fbb73771ca1e6200ced2d7cec04ed581Development documents and examples for pandas-flavor
**The easy way to write your own flavor of Pandas**
Pandas 0.23 added a (simple) API for registering accessors with Pandas objects.
Pandas-flavor extends Pandas' extension API by:
1. adding support for registering methods as well.
2. making each of these functions backwards compatible with older versions of Pandas.
***What does this mean?***
It is now simpler to add custom functionality to Pandas DataFrames and Series.
Import this package. Write a simple python function. Register the function using one of the following decorators.
***Why?***
Pandas is super handy. Its general purpose is to be a "flexible and powerful data analysis/manipulation library".
**Pandas Flavor** allows you add functionality that tailors Pandas to specific fields or use cases.
Maybe you want to add new write methods to the Pandas DataFrame? Maybe you want custom plot functionality? Maybe something else?
Accessors (in pandas) are objects attached to a attribute on the Pandas DataFrame/Series
that provide extra, specific functionality. For example, `pandas.DataFrame.plot` is an
accessor that provides plotting functionality.
Add an accessor by registering the function with the following decorator
and passing the decorator an accessor name.
```python
import pandas_flavor as pf
@pf.register_dataframe_accessor('my_flavor')
class MyFlavor(object):
def __init__(self, data):
self._data = data
def row_by_value(self, col, value):
"""Slice out row from DataFrame by a value."""
return self._data[self._data[col] == value].squeeze()
```
Every dataframe now has this accessor as an attribute.
```python
import my_flavor
df = pd.DataFrame(data={
"x": [10, 20, 25],
"y": [0, 2, 5]
})
print(df)
df.my_flavor.row_by_value('x', 10)
```
To see this in action, check out [pdvega](https://github.com/jakevdp/pdvega),
[PhyloPandas](https://github.com/Zsailer/phylopandas), and [pyjanitor](https://github.com/ericmjl/pyjanitor)!
Using this package, you can attach functions directly to Pandas objects. No
intermediate accessor is needed.
```python
import pandas_flavor as pf
@pf.register_dataframe_method
def row_by_value(df, col, value):
"""Slice out row from DataFrame by a value."""
return df[df[col] == value].squeeze()
```
```python
import pandas as pd
import my_flavor
df = pd.DataFrame(data={
"x": [10, 20, 25],
"y": [0, 2, 5]
})
print(df)
df.row_by_value('x', 10)
```
The pandas_flavor 0.5.0 release introduced [tracing of the registered method calls](/docs/tracing_ext.md). Now it is possible to add additional run-time logic around registered method execution which can be used for some support tasks. This extension was introduced
to allow visualization of [pyjanitor](https://github.com/pyjanitor-devs/pyjanitor) method chains as implemented in [pyjviz](https://github.com/pyjanitor-devs/pyjviz)
- **register_dataframe_method**: register a method directly with a pandas DataFrame.
- **register_dataframe_accessor**: register an accessor (and it's methods) with a pandas DataFrame.
- **register_series_method**: register a methods directly with a pandas Series.
- **register_series_accessor**: register an accessor (and it's methods) with a pandas Series.
You can install using **pip**:
```
pip install pandas_flavor
```
or conda (thanks @ericmjl)!
```
conda install -c conda-forge pandas-flavor
```
Pull requests are always welcome! If you find a bug, don't hestitate to open an issue or submit a PR. If you're not sure how to do that, check out this [simple guide](https://github.com/Zsailer/guide-to-working-as-team-on-github).
If you have a feature request, please open an issue or submit a PR!
Pandas 0.23 introduced a simpler API for [extending Pandas](https://pandas.pydata.org/pandas-docs/stable/development/extending.html#extending-pandas). This API provided two key decorators, `register_dataframe_accessor` and `register_series_accessor`, that enable users to register **accessors** with Pandas DataFrames and Series.
Pandas Flavor originated as a library to backport these decorators to older versions of Pandas (<0.23). While doing the backporting, it became clear that registering **methods** directly to Pandas objects might be a desired feature as well.[*](#footnote)
<a name="footnote">*</a>*It is likely that Pandas deliberately chose not implement to this feature. If everyone starts monkeypatching DataFrames with their custom methods, it could lead to confusion in the Pandas community. The preferred Pandas approach is to namespace your methods by registering an accessor that contains your custom methods.*
**So how does method registration work?**
When you register a method, Pandas flavor actually creates and registers a (this is subtle, but important) **custom accessor class that mimics** the behavior of a method by:
1. inheriting the docstring of your function
2. overriding the `__call__` method to call your function.https://github.com/Zsailer/pandas_flavorMITopenEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-pandas-flavor-0.6.0-1.src.rpmpython-pingouinsrce7593be9d2407dd4036e71b714c3e445a1fa5d8af04f1c04e09c97e57f25a430Pingouin: statistical package for Python**Pingouin** is an open-source statistical package written in Python 3 and based mostly on Pandas and NumPy. Some of its main features are listed below. For a full list of available functions, please refer to the `API documentation <https://pingouin-stats.org/build/html/api.html#>`_.
1. ANOVAs: N-ways, repeated measures, mixed, ancova
2. Pairwise post-hocs tests (parametric and non-parametric) and pairwise correlations
3. Robust, partial, distance and repeated measures correlations
4. Linear/logistic regression and mediation analysis
5. Bayes Factors
6. Multivariate tests
7. Reliability and consistency
8. Effect sizes and power analysis
9. Parametric/bootstrapped confidence intervals around an effect size or a correlation coefficient
10. Circular statistics
11. Chi-squared tests
12. Plotting: Bland-Altman plot, Q-Q plot, paired plot, robust correlation...
Pingouin is designed for users who want **simple yet exhaustive statistical functions**.
For example, the :code:`ttest_ind` function of SciPy returns only the T-value and the p-value. By contrast,
the :code:`ttest` function of Pingouin returns the T-value, the p-value, the degrees of freedom, the effect size (Cohen's d), the 95% confidence intervals of the difference in means, the statistical power and the Bayes Factor (BF10) of the test.https://pingouin-stats.org/index.htmlGPL-3.0openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-pingouin-helpnoarch9bd231c0bc43f28d93e73a30259c1b6f9258d18c508b9c3fa16ee92a54c15c16Development documents and examples for pingouin**Pingouin** is an open-source statistical package written in Python 3 and based mostly on Pandas and NumPy. Some of its main features are listed below. For a full list of available functions, please refer to the `API documentation <https://pingouin-stats.org/build/html/api.html#>`_.
1. ANOVAs: N-ways, repeated measures, mixed, ancova
2. Pairwise post-hocs tests (parametric and non-parametric) and pairwise correlations
3. Robust, partial, distance and repeated measures correlations
4. Linear/logistic regression and mediation analysis
5. Bayes Factors
6. Multivariate tests
7. Reliability and consistency
8. Effect sizes and power analysis
9. Parametric/bootstrapped confidence intervals around an effect size or a correlation coefficient
10. Circular statistics
11. Chi-squared tests
12. Plotting: Bland-Altman plot, Q-Q plot, paired plot, robust correlation...
Pingouin is designed for users who want **simple yet exhaustive statistical functions**.
For example, the :code:`ttest_ind` function of SciPy returns only the T-value and the p-value. By contrast,
the :code:`ttest` function of Pingouin returns the T-value, the p-value, the degrees of freedom, the effect size (Cohen's d), the 95% confidence intervals of the difference in means, the statistical power and the Bayes Factor (BF10) of the test.https://pingouin-stats.org/index.htmlGPL-3.0openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-pingouin-0.5.5-1.src.rpmpython-seabornsrc7719d19acdd9bd1008ce51708e33df8c0a2bf43c8c9987bb07d79edf6c781706Statistical data visualizationhttps://pypi.org/project/seaborn/NoneopenEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-seaborn-helpnoarch1a7c1e855df59d70049b9240685d2c13e40fa65ef3d6df54e6fa0ac215f32f33Development documents and examples for seabornhttps://pypi.org/project/seaborn/NoneopenEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-seaborn-0.13.2-1.src.rpmpython3-gala-anteateraarch647ff1c8f87f8d3a787511213086ec95636aee6d65808b18fb2b0731415641c473Python3 package of gala-anteaterPython3 package of gala-anteaterhttps://gitee.com/openeuler/gala-anteaterMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843593-20250917-0732gala-anteater-3.0.1-1.src.rpmpython3-gala-inferenceaarch64bb1549c7cd19a7b32532e7b4b6e16eb82ae082b15d96d434224a03dbb1b0e8dbPython3 package of gala-inferencePython3 package of gala-inferencehttps://gitee.com/openeuler/gala-spiderMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154gala-spider-2.0.1-1.src.rpmpython3-gala-spideraarch64eb3b020263546b29d4435b6ee55c0abd2943edb246014268d5a2c9b6009ecd6ePython3 package of gala-spiderPython3 package of gala-spiderhttps://gitee.com/openeuler/gala-spiderMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843560-20250916-1154gala-spider-2.0.1-1.src.rpmpython3-pandas-flavornoarcha971893ec78a64e817ae6417cd5f95d084b7dbc369964fec888dd01fdf57fcbfThe easy way to write your own Pandas flavor.
**The easy way to write your own flavor of Pandas**
Pandas 0.23 added a (simple) API for registering accessors with Pandas objects.
Pandas-flavor extends Pandas' extension API by:
1. adding support for registering methods as well.
2. making each of these functions backwards compatible with older versions of Pandas.
***What does this mean?***
It is now simpler to add custom functionality to Pandas DataFrames and Series.
Import this package. Write a simple python function. Register the function using one of the following decorators.
***Why?***
Pandas is super handy. Its general purpose is to be a "flexible and powerful data analysis/manipulation library".
**Pandas Flavor** allows you add functionality that tailors Pandas to specific fields or use cases.
Maybe you want to add new write methods to the Pandas DataFrame? Maybe you want custom plot functionality? Maybe something else?
Accessors (in pandas) are objects attached to a attribute on the Pandas DataFrame/Series
that provide extra, specific functionality. For example, `pandas.DataFrame.plot` is an
accessor that provides plotting functionality.
Add an accessor by registering the function with the following decorator
and passing the decorator an accessor name.
```python
import pandas_flavor as pf
@pf.register_dataframe_accessor('my_flavor')
class MyFlavor(object):
def __init__(self, data):
self._data = data
def row_by_value(self, col, value):
"""Slice out row from DataFrame by a value."""
return self._data[self._data[col] == value].squeeze()
```
Every dataframe now has this accessor as an attribute.
```python
import my_flavor
df = pd.DataFrame(data={
"x": [10, 20, 25],
"y": [0, 2, 5]
})
print(df)
df.my_flavor.row_by_value('x', 10)
```
To see this in action, check out [pdvega](https://github.com/jakevdp/pdvega),
[PhyloPandas](https://github.com/Zsailer/phylopandas), and [pyjanitor](https://github.com/ericmjl/pyjanitor)!
Using this package, you can attach functions directly to Pandas objects. No
intermediate accessor is needed.
```python
import pandas_flavor as pf
@pf.register_dataframe_method
def row_by_value(df, col, value):
"""Slice out row from DataFrame by a value."""
return df[df[col] == value].squeeze()
```
```python
import pandas as pd
import my_flavor
df = pd.DataFrame(data={
"x": [10, 20, 25],
"y": [0, 2, 5]
})
print(df)
df.row_by_value('x', 10)
```
The pandas_flavor 0.5.0 release introduced [tracing of the registered method calls](/docs/tracing_ext.md). Now it is possible to add additional run-time logic around registered method execution which can be used for some support tasks. This extension was introduced
to allow visualization of [pyjanitor](https://github.com/pyjanitor-devs/pyjanitor) method chains as implemented in [pyjviz](https://github.com/pyjanitor-devs/pyjviz)
- **register_dataframe_method**: register a method directly with a pandas DataFrame.
- **register_dataframe_accessor**: register an accessor (and it's methods) with a pandas DataFrame.
- **register_series_method**: register a methods directly with a pandas Series.
- **register_series_accessor**: register an accessor (and it's methods) with a pandas Series.
You can install using **pip**:
```
pip install pandas_flavor
```
or conda (thanks @ericmjl)!
```
conda install -c conda-forge pandas-flavor
```
Pull requests are always welcome! If you find a bug, don't hestitate to open an issue or submit a PR. If you're not sure how to do that, check out this [simple guide](https://github.com/Zsailer/guide-to-working-as-team-on-github).
If you have a feature request, please open an issue or submit a PR!
Pandas 0.23 introduced a simpler API for [extending Pandas](https://pandas.pydata.org/pandas-docs/stable/development/extending.html#extending-pandas). This API provided two key decorators, `register_dataframe_accessor` and `register_series_accessor`, that enable users to register **accessors** with Pandas DataFrames and Series.
Pandas Flavor originated as a library to backport these decorators to older versions of Pandas (<0.23). While doing the backporting, it became clear that registering **methods** directly to Pandas objects might be a desired feature as well.[*](#footnote)
<a name="footnote">*</a>*It is likely that Pandas deliberately chose not implement to this feature. If everyone starts monkeypatching DataFrames with their custom methods, it could lead to confusion in the Pandas community. The preferred Pandas approach is to namespace your methods by registering an accessor that contains your custom methods.*
**So how does method registration work?**
When you register a method, Pandas flavor actually creates and registers a (this is subtle, but important) **custom accessor class that mimics** the behavior of a method by:
1. inheriting the docstring of your function
2. overriding the `__call__` method to call your function.https://github.com/Zsailer/pandas_flavorMITopenEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-pandas-flavor-0.6.0-1.src.rpmpython3-pingouinnoarchd39aca5162ed5a4e3dd57d99f96598fec3912450b24424f24d029dba1cdbb5e1Pingouin: statistical package for Python**Pingouin** is an open-source statistical package written in Python 3 and based mostly on Pandas and NumPy. Some of its main features are listed below. For a full list of available functions, please refer to the `API documentation <https://pingouin-stats.org/build/html/api.html#>`_.
1. ANOVAs: N-ways, repeated measures, mixed, ancova
2. Pairwise post-hocs tests (parametric and non-parametric) and pairwise correlations
3. Robust, partial, distance and repeated measures correlations
4. Linear/logistic regression and mediation analysis
5. Bayes Factors
6. Multivariate tests
7. Reliability and consistency
8. Effect sizes and power analysis
9. Parametric/bootstrapped confidence intervals around an effect size or a correlation coefficient
10. Circular statistics
11. Chi-squared tests
12. Plotting: Bland-Altman plot, Q-Q plot, paired plot, robust correlation...
Pingouin is designed for users who want **simple yet exhaustive statistical functions**.
For example, the :code:`ttest_ind` function of SciPy returns only the T-value and the p-value. By contrast,
the :code:`ttest` function of Pingouin returns the T-value, the p-value, the degrees of freedom, the effect size (Cohen's d), the 95% confidence intervals of the difference in means, the statistical power and the Bayes Factor (BF10) of the test.https://pingouin-stats.org/index.htmlGPL-3.0openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-pingouin-0.5.5-1.src.rpmpython3-seabornnoarch8b3fa6d1ee7f5c6b0aa0e0b6e7280b9a2927999c04e7f6eb8a00104dfbb28f05Statistical data visualizationhttps://pypi.org/project/seaborn/NoneopenEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843557-20250916-1151python-seaborn-0.13.2-1.src.rpmzeus-distributeaarch6489576c40ced183eaa6936adde0bf4b70d7724e31ccb95e7dffa9299a3a804856A distributed service of aops.A distributed service of aops.https://gitee.com/openeuler/aops-zeusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-zeus-v2.2.0-1.src.rpm/etc/aops/conf.d/zeus-distribute.ymlzeus-host-informationaarch6411ccab696f7fdd66a68aa2437fb7f1208218dc4201da4005fed2a801273bd4e2A host manager service which is the foundation of aops.A host manager service which is the foundation of aops.https://gitee.com/openeuler/aops-zeusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-zeus-v2.2.0-1.src.rpm/etc/aops/conf.d/zeus-host-information.ymlzeus-operationaarch64557649a2d5ea8bea6db69e6283d8554ddfed0706302e9e2ac315a860a0773b18A operation manager service which is the foundation of aops.A operation manager of aops.https://gitee.com/openeuler/aops-zeusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-zeus-v2.2.0-1.src.rpm/etc/aops/conf.d/zeus-operation.ymlzeus-user-accessaarch64f556780d7874ca867ca61f03af84e5fe202d7988763dccb5b6cf863578995161A user manager service which is the foundation of aops.A user manager service which is the foundation of aops.https://gitee.com/openeuler/aops-zeusMulanPSL2openEuler Copr - user yanzhicongUnspecifiedeur-prod-workerlocal-aarch64-normal-prod-00843614-20250918-0250aops-zeus-v2.2.0-1.src.rpm/etc/aops/conf.d/zeus-user-access.yml