기본 콘텐츠로 건너뛰기

라벨이 Leverage인 게시물 표시

[matplotlib]quiver()함수

Statistical analysis results graph code

The following graphs are the codes for the figures included in Chapters 6 and 7 of the e-book Statistics with Python . import numpy as np import pandas as pd from scipy import stats from sklearn.preprocessing import StandardScaler import FinanceDataReader as fdr import yfinance as yf import statsmodels.api as sm from statsmodels.formula.api import ols from sklearn.linear_model import LinearRegression import matplotlib.pyplot as plt import seaborn as sns sns.set_style("darkgrid") #fig 611 st=pd.Timestamp(2024,1, 1) et=pd.Timestamp(2024, 5, 30) code=["^KS11", "^KQ11", "^DJI", "KRW=X"] nme=['kos','kq','dj','WonDol'] da=pd.DataFrame() for i in code: x=yf.download(i,st, et)['Close'] x1=x.pct_change() da=pd.concat([da, x1], axis=1) da.columns=nme da1=da.dropna() da1.index=range(len(da1)) da2=pd.melt(da1, value_vars=['kos', 'kq', 'dj', 'WonDol'], var_name=...

통계분석 결과 그래프

다음 그래프들은 전자책 파이썬과 함께하는 통계이야기 6 장과 7장에 수록된 그림들의 코드들입니다. import numpy as np import pandas as pd from scipy import stats from sklearn.preprocessing import StandardScaler import FinanceDataReader as fdr import yfinance as yf import statsmodels.api as sm from statsmodels.formula.api import ols from sklearn.linear_model import LinearRegression import matplotlib.pyplot as plt import seaborn as sns sns.set_style("darkgrid") #fig 611 st=pd.Timestamp(2024,1, 1) et=pd.Timestamp(2024, 5, 30) code=["^KS11", "^KQ11", "^DJI", "KRW=X"] nme=['kos','kq','dj','WonDol'] da=pd.DataFrame() for i in code: x=yf.download(i,st, et)['Close'] x1=x.pct_change() da=pd.concat([da, x1], axis=1) da.columns=nme da1=da.dropna() da1.index=range(len(da1)) da2=pd.melt(da1, value_vars=['kos', 'kq', 'dj', 'WonDol'], var_name="idx", value_name="val") model=ols("val~...

[data analysis] 레버리지(Leverage)

레버리지(Leverage) 회귀모형에서 이상치(outlier) 파악 Hat 행렬 스튜던트 잔차(rstudent) Cook's Distance(D) 레버리지가 높은 관측치는 설명(예측) 변수의 다른 샘플들에 비해 모델에 높은 영향을 미칠 수 있는 값으로 이상값이 될 수 있습니다. hat 행렬의 대각요소가 각 샘플의 레버리지를 나타내므로 높은 레버리지를 가진 관찰은 hat 통계량을 기준으로 결정할 수 있습니다. 일반적으로 주어진 데이터 세트에 대해 평균 레버리지를 기준으로 2 또는 3배보다 큰 레버리지를 갖는 관찰을 이상치의 대상으로 고려합니다. 이상적으로 hat 행렬이 대각요소가 모두 1이고 나머지 요소들이 모두 0인 경우 추정치와 관측치는 일치하게 될 것입니다. 그러나 실제 상황에서의 레버리지의 특성은 식 1과 같습니다. $$\text{tr(H)}=\sum^n_{i=1}h_{ii}=k$$ (식 1) 식 1에서 h ii 는 다음의 범위내에서 존재합니다. 0 < h ii < 1 H: hat 행렬 k: 모형에 사용된 모수의 개수(편차항 포함) N: 자료의 크기 위 get_influence() 의 결과인 hat 행렬의 대각요소들을 사용하여 식 1을 확인합니다. 이 대각요소들은 메소드 get_influence()의 hat_matrix_diag 속성(attribute)를 사용하여 호출할 수 있습니다. 또는 get_influence().summary_frame()의 속성(attribute) hat_diag 로 hat 행렬의 대각요소를 확인할 수 있습니다. import numpy as np import pandas as pd from sklearn.preprocessing import StandardScaler import matplotlib.pyplot as plt import FinanceDataReader as fdr import statsmodels.api as sm from ...