모집단: 우리가 알고 싶은 대상 전체
표본: 그 대상의 일부 영역
-> 표본을 가지고 모집단을 알고 싶은것!
바이러스 치료제인 A는 효과가 있을까?
귀무가설: A는 효과가 없다.
대립가설: A는 효과가 있다.
-> 이러한 절차를 가설 검정이라 부름
plt.scatter( x축 값, y축 값 )
plt.scatter( ‘x변수’, ‘y변수’, data = df)
sns.scatterplot( ‘x변수’, ‘y변수’, data = df)
sns.pairplot(dataframe) # 산점도 한번에 그리기
import scipy.stats as spst
spst.pearsonr(air['Temp'], air['Ozone'])
# 결과: (상관계수, p-value)
df.corr() # 한번에 상관계수 구하기
-> P-value < 0.05 이면, 두 변수 간에 관계가 있다!
sns.barplot(x="Survived", y="Age", data=titanic)
plt.grid()
plt.show()
# t-test
# 1) t-test를 위한 데이터 준비
# NaN 행 제외
temp = titanic.loc[titanic['Age'].notnull()]
# 두 그룹으로 데이터 저장
died = temp.loc[temp['Survived']==0, 'Age']
survived = temp.loc[temp['Survived']==1, 'Age']
# 2) t-test
spst.ttest_ind(died, survived)
# anova
# 1) 분산 분석을 위한 데이터 만들기
# NaN 행 제외
temp = titanic.loc[titanic['Age'].notnull()]
# 그룹별 저장
P_1 = temp.loc[temp.Pclass == 1, 'Age']
P_2 = temp.loc[temp.Pclass == 2, 'Age']
P_3 = temp.loc[temp.Pclass == 3, 'Age']
# 2) 분산분석
spst.f_oneway(P_1, P_2, P_3)
# option: columns, index, all
pd.crosstab(행, 열, normalize = option)
mosaic(titanic, [ 'Pclass','Survived'])
plt.axhline(1- titanic['Survived'].mean(),
color = 'r')
plt.show()
# 1) 먼저 교차표 집계
table = pd.crosstab(titanic['Survived’],
titanic['Pclass'])
print(table)
print('-' * 50)
# 2) 카이제곱검정
spst.chi2_contingency(table)
# 결과
# 카이제곱 통계랑, p-value, 자유도, 기대빈도
sns.kdeplot( )