Skip to content

ckdckd145/statmanager-kr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyPI version license status

logo

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

figure

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

figure

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

figure

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

figure

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

figure


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