Open-source statistical package in Python based on the Pandas
Project description
Available Operating Systems
Availabe Python Versions
Statmanager-kr is open-source statistical package for researchers, data scientists, psychologist, studends, and anyone who need statistical analysis. Statmanager-kr aims to be a user-friendly statistical package that can be easily used by people who unfamiliar with programming language.
Currently, KOREAN and ENGLISH are supported.
Documentaion
Official documentation - Korean
Official Documentation - English
Source Code & Dependency
Source codes are available in the Github respository
Dependency
- pandas
- statsmodels
- scipy
- numpy
- matplotlib
- seaborn
- XlsxWriter
It is recommended to use the latest versions of these libraries and packages to avoid unexpected errors.
Contribution Guidelines
Please check the guidelines in official documentation.
Please use Github Discussion to let me know the questions, bugs, suggestions or anything.
Quick Start
If you want to start with sample file, click this Read manual in documentation |
Installation
pip install statmanager-kr
Update
pip install statmanager-kr --upgrade
Import
import pandas as pd
from statmanager import Stat_Manager
# use your data file instead of 'testdf.csv'
df = pd.read_csv('testdf.csv', index_col = 'id')
sm = Stat_Manager(df, language = 'eng')
Independent Samples T-test
sm.progress(method = 'ttest_ind', vars = 'age', group_vars = 'sex').figure()
Output (Click to See)
female | male | |
---|---|---|
n | 15.00 | 15.00 |
mean | 27.33 | 28.00 |
median | 26.00 | 26.00 |
sd | 4.88 | 6.94 |
min | 21.00 | 20.00 |
max | 39.00 | 39.00 |
dependent variable | t-value | degree of freedom | p-value | 95% CI | Cohen'd |
---|---|---|---|---|---|
height | -0.304 | 28 | 0.763 | [-5.153, 3.820] | -0.111 |
Dependent Samples T-test
sm.progress(method = 'ttest_rel', vars = ['prescore', 'postscore']).figure()
Output (Click to See)
prescore | postscore | |
---|---|---|
n | … | … |
mean | 5.13 | 4.23 |
median | 5.50 | 4.00 |
sd | 2.85 | 2.91 |
min | … | … |
max | … | … |
variables | t-value | degree of freedom | p-value | 95% CI | Cohen's d |
---|---|---|---|---|---|
['prescore', 'postscore'] | 1.198 | 29 | 0.24 | [-0.636, 2.436] | 0.313 |
Pearson's Correlation
sm.progress(method = 'pearsonr', vars = ['income', 'prescore', 'age']).figure()
Output (Click to See)
n | Pearson's r | p-value | 95%_confidence_interval | |
---|---|---|---|---|
income & prescore | 30 | -0.103 | 0.588 | [-0.447, 0.267] |
income & age | 30 | -0.051 | 0.789 | [-0.404, 0.315] |
prescore & age | 30 | -0.044 | 0.816 | [-0.398, 0.321] |
income | prescore | age | |
---|---|---|---|
income | 1.000 | -0.103 | -0.051 |
prescore | -0.103 | 1.000 | -0.044 |
age | -0.051 | -0.044 | 1.000 |
One-way ANOVA with Post-hoc test
sm.progress(method = 'f_oneway', vars = 'age', group_vars = 'condition', posthoc = True).figure()
Output (Click to See)
test_group | sham_group | control_group | |
---|---|---|---|
n | 10 | 10 | 10 |
mean | 28.5 | 28.3 | 26.2 |
median | 27 | 29 | 25.5 |
sd | 6.57 | 5.56 | 5.88 |
min | … | … | … |
max | … | … | … |
sum_sq | df | F | p-value | partial eta squared | |
---|---|---|---|---|---|
Intercept | 6864.4 | 1 | 189.469 | 0 | 0.872 |
C(condition) | 32.467 | 2 | 0.448 | 0.644 | 0.004 |
Residual | 978.2 | 27 | NaN | NaN | 0.124 |
Test Multiple Comparison ttest_ind FWER=0.05 method=bonf alphacSidak=0.02, alphacBonf=0. |
---|
group1 | group2 | stat | pval | pval_corr | reject |
---|---|---|---|---|---|
control_group | sham_group | -0.8204 | 0.4227 | 1 | FALSE |
control_group | test_group | -0.8246 | 0.4204 | 1 | FALSE |
sham_group | test_group | -0.0735 | 0.9422 | 1 | FALSE |
One-way Repeated Measure ANOVA with Post-hoc test
sm.progress(method = 'f_oneway_rm', vars = ['prescore','postscore','fupscore'], posthoc = True).figure()
Output (Click to See)
prescore | postscore | fupscore | |
---|---|---|---|
n | 30.00 | 30.00 | 30.00 |
mean | 5.13 | 4.23 | 4.37 |
median | 5.50 | 4.00 | 4.00 |
sd | 2.85 | 2.91 | 2.62 |
min | … | … | … |
max | … | … | … |
F Value | Num DF | Den DF | p-value | partial etq squared | |
---|---|---|---|---|---|
variable | 1.079 | 2 | 58 | 0.347 | 0.02 |
Test Multiple Comparison ttest_ind FWER=0.05 method=bonf alphacSidak=0.02, alphacBonf=0. |
---|
group1 | group2 | stat | pval | pval_corr | reject |
---|---|---|---|---|---|
fupscore | postscore | 0.1866 | 0.8526 | 1 | FALSE |
fupscore | prescore | -1.0849 | 0.2824 | 0.8473 | FALSE |
postscore | prescore | -1.2106 | 0.231 | 0.6929 | FALSE |
Related Software
As mentioned earlier, Statmanager-kr
was developed to provide a user-friendly way to perform statistical analysis methods to test hypotheses, even if the researcher is not familiar with programming languages such as Python. As such, a related software that provides similar user-friendly features is Pingouin
.
The main difference is that Statmanager-kr
was developed with the goal of being a package that can be used by researchers who lack programming knowledge or experience. To this end, rather than implementing independent methods for each analysis, Statmanager-kr
is designed to allow users to enter code in the same way at any time to perform statistical analysis and obtain the results. Of course, Pingouin
also has user-friendly characteristics, but it is a package that is better suited for users with more programming experience and knowledge than Statmanager-kr
. Due to this difference in characteristics, Statmanager-kr
does not support the ability to fine-tune analysis methods by adjusting parameters, whereas Pingouin
is useful for adjusting parameters to obtain more careful and suitable results.
In conclusion, Statmanager-kr
is a good package for researchers who lack programming experience and knowledge and want to see results quickly. Pingouin
, on the other hand, is a more suitable package for researchers with more programming experience and knowledge, who need a fine-tuned approach to each analysis method.
How to cite?
For inserting the citations, please use this:
- Lee, C., (2024). Statmanager-kr: A User-friendly Statistical Package for Python in Pandas. Journal of Open Source Software, 9(102), 6642, https://doi.org/10.21105/joss.06642
Development: Changseok Lee
Copyright (C) 2023 Changseok Lee
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file statmanager_kr-1.8.1.15-py3-none-any.whl
.
File metadata
- Download URL: statmanager_kr-1.8.1.15-py3-none-any.whl
- Upload date:
- Size: 328.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9fb18b3e4e9abaa88186ee1433ec4f05ec00455a93e74ebeed5bce80b061e474 |
|
MD5 | 3bccaec09e7a437da698697c58a8b086 |
|
BLAKE2b-256 | 93b86e49c3f2643695a463d13b98487c4a07fb3ca369cefcb09c01e7dc9d847d |