기본 콘텐츠로 건너뛰기

라벨이 analysis인 게시물 표시

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

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은 열단위 즉, 행 방향으

statsmodels_OLS estimation

다음 코드는  100 개의 설명변수 샘플에 임의의 방정식에 대응되는 반응변수를 생성한 인위적인 샘플에 대한 회귀분석 과정을 보인다 . from __future__ import print_function import numpy as np import statsmodels.api as sm import matplotlib.pyplot as plt from statsmodels.sandbox.regression.predstd import wls_prediction_std np . random . seed ( 9876789 ) n=100  x=np.linspace(0, 10, 100) #0, 10 사이에 100개의 숫자를 임의적으로 추출 X=np.column_stack((x, x**2)) #위의 x와 이 샘플의 제곱한 부분을 열로 정리  array([[ 0.00000000e+00, 0.00000000e+00], [ 1.01010101e-01, 1.02030405e-02], [ 2.02020202e-01, 4.08121620e-02], [ 3.03030303e-01, 9.18273646e-02], ... [ 1.00000000e+01, 1.00000000e+02]]) beta=np.array([1, 0.1, 10]) #임의의 방정식에 대한 계수 e=np.random.normal(size=n) #정규분포를 따르는 오차생성  위에서 생성한 설명변수에 대한 반응변수 생성  위에서 생성한 설명변수는 2개의 열로 구성 그러나 계수는 3개이므로 절편인 열이 필요하다. 이 경우 모든 원소인 1인 열을 첫번째로 삽입하기 위해 sm.add_constant() 메소드를 적용한다.  X=sm.add_constant(X) #모든 원소가 1인 새로운 열을 첨가 y=np.dot(X, beta)+e

데이터 특성찿기

다음 테이블에서 속성(attribute)는 설명변수(독립변수), 라벨(labels)은 반응변수(종속변수)를 나타낸다. 사용자ID 속성1 속성2 속성3 라벨 0 1 6.5 Male 12 120 1 4 4.2 Female 17 270 2 7 5.7 Male 3 75 3 8 5.8 Female 8 60 위의 데이터는 행과 열로 구성되어 있다.  각 행은 각 사용자에 속한 속성들을 나타내고 이는  instance, example, observation으로 명명된다.  열은 다양한 이름으로 명칭된다. 즉,  속성들은 Predictors(예측자), Features, 독립변수, 입력변수(inputs)로 나타내고  라벨은 , 결과변수(output), targets, 종속변수, 반응변수로 나타낸다.  위 테이블의 데이터 타입은 수치변수(속성1, 속성3, 라벨)와 목록변수(factor, 속성2)로 구성되어있다. 그러나 대부분의 기계학습의 알고리즘에서는 목록변수를 처리할 수 없다. 그러므로 목록변수는 수치변수로 전환되되야 한다.  독립변수가 위 태이블과 같이 수치형인 경우 regression 분석 문제로 귀결되고 다음 테이블과 같이 반응변수를 True, False와 같이 목록변수로 변화시킨 경우 분류문제(classification problem)가 된다.  위 테이블은 pandas의 DataFrame 구조이다. 이 구조의 기본 통계량에 대한 정보는  pd.describe()에 의해 나타낼 수 있다. 이 함수는 수치변수인 변수만을 선별적으로 계산된다.  print(d.describe()) 사용자ID 속성1 속성3 라벨 count 4.000000 4.000000 4.000000 4.00000 mean 5.000000 5.550000 10.000000 266.25000 std 3.162278 0.967815 5.944185 237.60524