Skip to main content

사회과학의 맥락에서 통계를 손쉽게 사용할 수 있는 패키지 by Changseok Lee

Project description

STAT MANAGER KR

개발자 정보

이창석
이메일: ckdckd145@gmail.com
Linkedin: www.linkedin.com/in/cslee0052
버그가 발생하거나 제안사항은 언제든지 이메일로 연락주시면 감사하겠습니다.

Ver 1.0.1

지원하는 통계방법은 지속적으로 업데이트할 예정입니다.

  • 현재까지 지원하는 통계종류
    • 정규성 검정
      • Kolmogorov-Sminrnov Test
      • Shapiro-Wilks Test
      • Z-Skewness & Z-Kurtosis Test
    • 등분산성 검정
      • Levene Test
      • Fmax Test
    • 빈도분석
      • 카이제곱검정 (Chi-square Test)
    • 상관분석
      • Pearson's r
      • Spearman's r
    • 차이비교 (2)
      • 모수검정법
        • 독립표본 T-Test (Independent Samples T-Test)
        • 대응표본 T-Test (Dependent Samples T-Test)
      • 비모수검정법
        • Mann-Whitney U Test (2집단 간 차이를 검정하는 비모수 기법)
        • Wilcoxon-Signed Ranksum Test (집단 내 두 변수의 차이를 검정하는 비모수 기법)
    • 차이비교 (3)
      • 모수검정법
        • One-way ANOVA
      • 비모수검정법
        • Kruskal Wallis Test
      • 사후검증 (Post-hoc)
        • Bonferroni correction

  • 업데이트 예정 통계종류
    • Bootstrap
      • Bootstrap sampling
      • Bootstrap percentile method
    • 회귀
      • 선형회귀 (Linear regression)
      • 로지스틱회귀 (Logistic regression)
      • 일반화추정방정식 (General Estimating Equation)
    • 차이비교 (3)
      • One-way Repeated Measures ANOVA
      • N-way ANOVA
      • N-way Repeated Measures ANOVA
    • 사후검증 (Post-hoc)
      • Tukey HSD

개발 목적

해당 프로그램은 python에서 pandas를 활용하여 데이터 분석을 주로 하시는 분들을 위한 패키지입니다.
SPSS와 같이 손쉬운 통계를 제공하는 툴이 시중에 출시되어 있지만, 가격이 비싸다는 단점이 있습니다.
pandas를 주로 사용하시는 분들이 사용하기에 번거롭다는 것도 단점입니다.
하지만, 그렇다고 scipy나 statmodels와 같은 패키지를 사용하기에는 요구되는 코딩 방식과 데이터프레임의 방식이 상이한 부분이 많아 어려움이 큽니다.
이를 상쇄하고자 하나의 통일된 방식의 코딩을 통해 통계분석을 진행할 수 있게끔 패키지를 만들고 있습니다.

활용

필요 패키지

  • pandas
  • statsmodels
  • scipy
  • numpy
  • json

안내

jupyter notebook 사용을 권고합니다.

설치

pip install statmanager-kr

Import

from statmanager import Stat_Manager

객체 생성

sm = Stat_Manager(df)
  • df : pandas 데이터 프레임

분석 메소드

sm.progress()
  • args:
    • method : (필수)(str) 분석 방법
      • Kolmogorov-sminrnov Test : 'kstest'
      • Shapiro-Wilks Test : 'shapiro'
      • Z-Skewness * Z-Kurtosis Test : 'z_normal'
      • Levene Test : 'levene'
      • Fmax Test : 'fmax'
      • 카이제곱검정 : 'chi2_contingency'
      • Pearson's r 상관분석 : 'pearsonr'
      • Spearman's r 상관분석 : 'spearmanr'
      • 독립표본 t : 'ttest_ind'
      • 대응표본 t : 'ttest_rel'
      • Mann-Whitney U Test : 'mannwhitneyu'
      • Wilcoxon-Signed Ranksum Test : 'wilcoxon'
      • One-way ANOVA : 'f_oneway'
      • Kruskal-Wallis Test : 'kruskal'

    • vars : (필수)(list) 분석할 변수명

    • group_vars : (선택)(str) 그룹 변수명
      • default: None
      • 집단 변수가 필요한 분석의 경우 필수로 제공해야 합니다.
        • Levene Test
        • Fmax Test
        • 독립표본 t
        • Mann-Whitney U Test
        • One-way ANOVA
        • Kruskal-Wallis Test

    • group_names : (선택)(list) 그룹 변수 내 비교할 그룹명
      • default: None
      • 집단 변수가 필요한 분석의 경우 필수로 제공해야 합니다.

    • posthoc : (선택) 사후검증을 진행하는 경우 True
      • default: False
예시
예제 확인 링크: https://cslee145.notion.site/statmanager-kr-c277749fe94b4e08a836236b409642b3?pvs=4
  1. Kolmogorov-Sminrnov Test

sm.progress(method = 'kstest', vars = ['age'])

해석: 연령(age)의 정규성 검정

  1. Levene Test

sm.progress(method = 'levene', vars = ['age'], group_vars = 'sex', group_names = ['male', 'female'])

해석: 남성, 여성 집단(sex) 간 연령(age)에 대한 등분산성 검정

  1. Pearson's r 상관분석

sm.progress(method = 'pearsonr', vars = ['age', 'income', 'prescore', 'postscore'])

해석: 연령(age), 수입(income), 사전측정치(prescore), 사후측정치(postscore) 간 상관분석

  1. 독립표본 t검정

sm.progress(method = 'ttest_ind', vars = ['postscore'], group_vars = 'condition', group_names = ['test_group', 'control_group'])

해석: 집단 변수인 조건(condition)에 따라, 시험군(test_group), 통제군(control_group) 간 사후측정치(postscore)의 차이 비교

  1. 대응표본 t검정

sm.progress(method = 'ttest_rel', vars = ['prescore', 'postscore'])

해석: 사전측정치(prescore), 사후측정치(postscore) 간 차이 비교

  1. One-way ANOVA

sm.progress(method = 'f_oneway', vars = ['postscore'], group_vars = 'condition', group_names = ['test_group', 'sham_group', 'control_group'])

해석: 집단 변수인 조건(condition)에 따라, 시험군(test_group), 위약군(sham_group), 통제군(control_group) 간 사후측정치(postscore)의 차이 비교

사후검증까지 수행하는 경우

sm.progress(method = 'f_oneway', vars = ['postscore'], group_vars = 'condition', group_names = ['test_group', 'sham_group', 'control_group'], posthoc = True)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

statmanager_kr-1.0.1-py3-none-any.whl (7.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page