기본 콘텐츠로 건너뛰기

통계관련 함수와 메서드 사전

A B C d E F G H I K L M N O P Q R S T U V W Z A statsmodels.ap.stats.anova_lm(x) statsmodels.formula.api.ols 에 의해 생성되는 모형 즉, 클래스 인스턴스(x)를 인수로 받아 anova를 실행합니다. np.argsort(x, axis=-1, kind=None) 객체 x를 정렬할 경우 각 값에 대응하는 인덱스를 반환합니다. Axis는 기준 축을 지정하기 위한 매개변수로서 정렬의 방향을 조정할 수 있음(-1은 기본값으로 마지막 축) pandas.Series.autocorr(lag=1) lag에 전달한 지연수에 따른 값들 사이의 자기상관을 계산 B scipy.stats.bernoulli(x, p) 베르누이분포에 관련된 통계량을 계산하기 위한 클래스를 생성합니다. x: 랜덤변수 p: 단일 시행에서의 확률 scipy.stats.binom(x, n, p) 이항분포에 관련된 통계량을 계산하기 위한 클래스를 생성합니다. x: 랜덤변수 n: 총 시행횟수 p: 단일 시행에서의 확률 C scipy.stats.chi2.pdf(x, df, loc=0, scale=1) 카이제곱분포의 확률밀도함수를 계산 $$f(x, k) =\frac{1}{2^{\frac{k}{2}−1}Γ(\frac{k}{2})}x^{k−1}\exp\left(−\frac{x^2}{2}\right)$$ x: 확률변수 df: 자유도 pd.concat(objs, axis=0, join=’outer’, …) 두 개이상의 객체를 결합한 새로운 객체를 반환. objs: Series, DataFrame 객체. Axis=0은 행단위 즉, 열 방향으로 결합, Axis=1은 열단위 즉, 행 방향으
최근 글

Pickle: 객체의 직렬화(Serialization)

내용 Pickling Pickling Files Unpickling Files Pickle 파일 압축 Pickle: 객체의 직렬화(Serialization) 데이터는 사전, DataFrame 또는 기타 형식으로 저장하거나 전송하기 위해 객체화할 수 있습니다. 이러한 객체들을 직렬화하여 파일에 저장하고 나중에 프로그램에 다시 로드할 수 있습니다. [직렬화] 객체의 직렬화란 객체의 내용을 바이트 단위로 변환하여 파일 또는 네트워크를 통해서 스트림(송수신)이 가능하도록 하는 것을 의미합니다. Pickling Pickle은 마샬링 또는 평면화라고도 하는 Python 개체 구조를 직렬화 및 역직렬화하는 데 사용됩니다. 직렬화는 메모리의 개체를 디스크에 저장하거나 네트워크를 통해 보낼 수 있는 바이트 스트림으로 변환하는 프로세스를 나타냅니다. 나중에 이 문자 스트림을 검색하여 Python 객체로 역직렬화할 수 있습니다. pickling는 compression(압축)과는 다릅니다. 즉, 전자는 개체를 한 표현(RAM(Random Access Memory)의 데이터)에서 다른 표현(디스크의 텍스트)으로 변환하는 반면 후자는 디스크 공간을 절약하기 위해 더 적은 비트로 데이터를 인코딩하는 프로세스입니다. Pickle의 용도와 주의사항 pickle은 데이터에 어느 정도의 지속성이 필요한 애플리케이션에 유용합니다. 프로그램의 상태 데이터를 디스크에 저장할 수 있으므로 나중에 계속 작업할 수 있습니다. 또한 TCP(Transmission Control Protocol) 또는 소켓 연결을 통해 데이터를 보내거나 데이터베이스에 Python 개체를 저장하는 데 사용할 수 있습니다. Pickle은 머신 러닝 알고리즘으로 작업할 때 모든 것을 다시 작성하거나 모델을 다시 훈련할 필요 없이 나중에 새로운 예측을 할 수 있도록 저장하려는 경우에 매우 유용합니다. 다양한 프로그래밍 언어에서 데이터를 사용하려면 pickle을 사용하지 않는 것

R 데이터의 재구성

내용 기본 행에 영향을 주는 함수 열에 영향을 주는 함수 그룹화 함수 피봇팅(Pivotting) pivot_longer() pivot_wider() 데이터 변환 기본 library(nycflights13) library(tidyverse) ## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ── ## ✔ ggplot2 3.4.0 ✔ purrr 0.3.5 ## ✔ tibble 3.1.8 ✔ dplyr 1.0.10 ## ✔ tidyr 1.2.1 ✔ stringr 1.4.1 ## ✔ readr 2.1.3 ✔ forcats 0.5.2 ## Warning: 패키지 'ggplot2'는 R 버전 4.2.2에서 작성되었습니다 ## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ── ## ✖ dplyr::filter() masks stats::filter() ## ✖ dplyr::lag() masks stats::lag() library(rstatix) ## Warning: 패키지 'rstatix'는 R 버전 4.2.2에서 작성되었습니다 ## ## 다음의 패키지를 부착합니다: 'rstatix' ## ## The following object is masked from 'package:stats': ## ## filter flights 데이터 : tibble 구조로 처음 몇 행만을 출력합니다. 전체를 보기 위해서는 View(flignts) 를 실행 dplyr을 사용한 데이터 변환 기본 코드 형태는 다음과 같이 파이프라인을 사용하여 데이터를 함수에 전달하는 것입니다. 적용할 데

R 등분산성( Homoscedasticity)

Bartlett 검정 Fligner 검정 Leven 검정 등분산성( Homoscedasticity) Bartlett 검정 Bartlett 검정은 집단간 분산에 대해 등분산성을 검정합니다. 이 검정은 두 집단 이상의 자료형식에서도 적용할 수 있으므로 t-검정 또는 일원분산분석에 적용할 자료의 등분산성 가정을 위한 검정에 사용합니다. 이 검정은 정규성에 부합하는 자료에만 적용될 수 있습니다. 검정 통계량은 다음과 같습니다. $$T=\frac{(N-k)\ln(s^2_p)-\sum^k_{i=1}(N_i-1)\ln(s^2_i)}{1+\frac{1}{3(k-1)}\left(\left(\sum^k_{i=1}\frac{1}{N_i-1}\right) - \frac{1}{N-k}\right)}$$ s 2 i : i 레벨(그룹)의 분산 N: 자료의 크기 k: 레벨(집단)dml tn s 2 p : 합동분산(pooled variance) $$s^2_p=\sum^k_{i=1}\frac{N_i-1}{N-k}s^2_i$$ 검정의 가설은 다음과 같습니다. 귀무가설(H0): 집단간 분산이 같다. 대립가설(Ha): 최소한 두 집단간의 분산이 다르다. multcomp 패키지의 데이터 셋 choloesterol을 대상으로 이 검정을 실시 합니다. 이 데이터는 다음과 같이 요인변수인 trt와 연속형 변수인 response로 구성됩니다. 요인은 5개의 수준(그룹)을 포함합니다. 그러므로 각 그룹 대응한 response 값들에 대한 등분산성을 평가합니다. library(tidyverse) library(rstatix) library(multcomp) chol %>% sample_n_by(trt, size=1) # A tibble: 5 × 2 trt response 1 1time 2.71 2 2times 8.60 3 4times 12.4 4 drugD 17.6 5 drugE 21.5

R 그래픽의 개요, plot(), 산점도와 선그래프

내용 개요 plot(): 산점도 제목과 라벨 격자 추가 여러개 산점도 작성 범례(legend) 산점도에 회귀선 추가 요인의 수준에 따른 산점도의 분리 선그래프 그래픽_plot()과 산점도 개요 R에서 그래프를 작성하는 함수는 고수준(high-level)과 저수준(low-level) 함수로 구분합니다. 고수준 함수는 새로운 그래프를 시작하며 축적, 제목과 라벨, 장식 등을 첨가할 수 있습니다. 반면에 저수준 함수는 새로운 그래프를 시작할 수 없으며 고수준 함수에 의해 생성된 그래프에 점, 선, 텍스트, 장식 등을 추가합니다. 고수준 함수 설명 저수준함수 설명 plot 제네릭(generic) 그래프 함수 points 점을 추가 boxplot 박스플롯 생성 lines 선을 추가 hist 히스토그램 생성 abline 직선을 추가 qqnorn Q-Q 플롯을 생성 segments 선분을 추가 curve 함수를 그래프로 작성 polygon 닫힌 다각형을 추가 coplot 조건화그래프 text 텍스트를 추가 barplot 막대그래프 새로운 그래프를 작성하기 위해서는 고수준함수를 호출한 후 저수준 함수를 작성합니다. 고수준 함수인 plot(x)은 전달하는 인자 x에 따라 생성되는 그래프 형상이 달라집니다. 즉, x가 벡터, 요인, 데이터프레임에 따라, 선형회귀 모형, 도수분포표 또는 다른 타입의 형태에 따라 다른 그래프를 생성합니다. 이것은 다형성(polymorphism) 이라고 합니다. 그러므로 제네릭함수인 plot을 다형함수라고 합니다. plot(): 산점도 두 열(column)로 으로 구성된 자료에 대해 plot()함수를 작성합니다. 데이터 cars는 두개의 열로 구성된 데이터 프레임입니다. 이

R 분산분석(ANOVA)의 개요

내용 용어 Fitting ANOVA aov() anova_test() 분산분석의 개요 요인(명목 또는 순서변수)이 설명 변수로 포함될 때 분석의 중심은 예측에서 각 그룹 차이에 대한 결정으로 이동하며 이 경우 사용하는 방법론을 분산 분석(ANOVA) 이라고 합니다. ANOVA 방법론은 다양한 실험 및 준실험 설계를 분석하는 데 사용됩니다. 용어 일반적으로 실험 설계, 특히 분산 분석에는 고유하게 사용되는 용어가 있습니다. 그룹화 변수는 요인(factor) 이라고도 합니다. 요인에 포함된 범주(그룹)를 수준(level) 또는 그룹 이라고 합니다. 수준 수는 요인에 따라 다를 수 있습니다. 요인의 수준 조합을 셀 이라고 합니다.다음 데이터로부터 용어들을 알아봅니다. 자료는 불안을 치료하기 위한 treatment내에 두 가지 수준(CBT, EMDR)이 있는 그룹 또는 레벨(level) 간 요인입니다. 환자가 하나의 그룹에만 할당되기 때문에 그룹 간 요인(between-groups)이라고 합니다. CBT와 EMDR을 모두 받은 환자는 없습니다. 다음 표의 s 문자는 주제(환자)를 나타내며 그 환자로 부터의 값이 반응변수이고 치료의 수준은 독립변수입니다. 각 처리 조건에 동일한 수의 관측치가 있으므로 균형 설계(balanced design) 가 있습니다. 표본 크기가 설계의 셀 전체에서 같지 않으면 불균형 설계(unbalanced design) 가 있는 것입니다. One-way between-groups ANOVA Treatment CBT EMDR s1 s6 s2 s7 s3 s8 s4 s9 s5 s10 위 표의 통계적 설계는 두개의 수준으로 구성된 요인 1개가 존재합니다. 즉, 분류 변수가 1개이므로 일원 분산 분석(one-way ANOVA) 이라고 합니다. 특히, 그룹 간 일원 분산 분석 입니다. ANOVA 설계의 효과는 주로 F 테스트 를 통해 평가됩니다. 치료

R 다항식과 다중 선형회귀

내용 다항식 회귀 다중 선형회귀(Multiple linear regression) 교호작용을 가진 다중선형회귀 추정치의 시각화 회귀모형의 일반적인 사항과 단순회귀모형의 내용이 선행되어야 합니다. 다항식 회귀 독립변수의 차수를 증가시켜 회귀모델을 생성할 수 있습니다. dataset "women" 30~39세의 여성 15명의 신장과 체중에 대한 자료입니다. 이 자료에서 신장을 설명변수로 하여 체중을 예측합니다. head(women, 3) height weight 1 58 115 2 59 117 3 60 120 fit2 <- lm(weight ~ height + I(height^2), data=women) 위 식은 모델 fit에 height의 제곱 항(I(height^2))을 추가한 것입니다. I() 함수는 괄호 안의 수식을 변형없이 실행합니다. summary(fit2) Call: lm(formula = weight ~ height + I(height^2), data = women) Residuals: Min 1Q Median 3Q Max -0.50941 -0.29611 -0.00941 0.28615 0.59706 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 261.87818 25.19677 10.393 2.36e-07 *** height -7.34832 0.77769 -9.449 6.58e-07 *** I(height^2) 0.08306 0.00598 13.891 9.32e-09 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual