본문 바로가기
파이썬 기초 scipy.stats 카이제곱검정 - chi2_contingency() feat.교차표 chi2_contingency() spst.chi2_contingency(테이블) 로 카이제곱 검정을 하기 위해서는 먼저 https://bigcat5312.tistory.com/58 파이썬 기초 pandas 범주끼리 비교 교차표-crosstab() pd.crosstab() pd.crosstab(범주형데이터1, 범주형데이터2) 함수를 사용하면 두 범주형 데이터의 빈도수를 교차표로 그릴 수 있다 ex) pd.crosstab(titanic['Survived'], titanic['Sex']) 여기서 normalize 옵션을 사용하 bigcat5312.tistory.com 내용대로 교차표를 만들어야한다 여기서 주의해야할 점은 교차표에서 normalize 옵션을 사용하면 안된다는 점이다 교차표를 만든 이후 spst.. 2023. 9. 2.
파이썬 기초 pandas 범주끼리 비교 교차표-crosstab() pd.crosstab() pd.crosstab(범주형데이터1, 범주형데이터2) 함수를 사용하면 두 범주형 데이터의 빈도수를 교차표로 그릴 수 있다 ex) pd.crosstab(titanic['Survived'], titanic['Sex']) 여기서 normalize 옵션을 사용하면 비율을 구할 수 있는데 columns = 각 열 기준 비율, index = 각 행 기준 비율, all = 전체 데이터 기준 비율 이다 ex) 2023. 9. 2.
파이썬 기초 scipy.stats 3개이상의 범주에 대한 anova구하기-spst.f_oneway() spst.f_oneway() spst.f_oneway()를 사용하기 위해서는 https://bigcat5312.tistory.com/56 파이썬 기초scipy.stats 2개 범주기준 숫자 t통계량과 p-value 구하기-spst.ttest_ind() spst.ttest_ind() spst.ttest_ind()를 사용하기 위해서는 먼저 loc를 사용해 해당 범주별 숫자 데이터를 분리해야한다 ex) 성별 별로 운임요금의 상관관계를 확인 male = titanic.loc[titanic['Sex']=='male']['Fare'] femal bigcat5312.tistory.com 처럼 데이터를 먼저 분리해주어야한다 또한 데이터에 NaN이 포함되어도 안된다 ex) P_1 = temp.loc[temp.Pclass.. 2023. 9. 2.
파이썬 기초scipy.stats 2개 범주기준 숫자 t통계량과 p-value 구하기-spst.ttest_ind() spst.ttest_ind() spst.ttest_ind()를 사용하기 위해서는 먼저 loc를 사용해 해당 범주별 숫자 데이터를 분리해야한다 *주의할점은 데이터에 NaN이 있으면 안된다!!!! ex) 성별 별로 운임요금의 상관관계를 확인 male = titanic.loc[titanic['Sex']=='male']['Fare'] female = titanic.loc[titanic['Sex']=='female']['Fare'] 이후 분리한 데이터를 spst.ttest_ind(데이터1, 데이터2)로 넣으면 t-test의 t 통계량과 p-value를 알 수 있다 여기서 결과값은 튜플 형태로 t통계량, p-value 순서로 출력된다 male = titanic.loc[titanic['Sex']=='male']['F.. 2023. 9. 2.
파이썬 기초 seaborn으로 범주기준 숫자 평균 비교하기-barplot() sns.barplot() sns.barplot(x='범주형 데이터', y='숫자형데이터') sns.barplot(x='범주형 데이터 인덱스', y='숫자형데이터 인덱스', data=데이터프레임) 을 사용하여 범주형 데이터 기준 숫자형데이터의 평균을 막대 그래프로 비교 할 수 있다 ex) sns.barplot(x="Survived", y="Age", data=titanic) 막대그래프 가운데의 선은 95% 신뢰구간이다 그래프 표시 순서를 바꾸고 싶다면 안에 order = [원하는 순서 리스트] 로 순서 지정이 가능하다 ex) sns.barplot(x="Survived", y="Age", data=titanic, order=[1,0]) plt.show() 2023. 9. 2.
파이썬 기초 scipy.stats 상관계수와 p-value 구하기-pearsonr(),corr() 및 시각화 spst.pearsonr() import scipy.stats as spst 로 scipy.stats를 임포트를 해준다 spst.pearsonr( 데이터1 , 데이터2 ) 형태로 해당 숫자형 데이터들의 상관계수와 p-value를 구할 수 있다 해당 함수를 사용하면 튜플형태로 (상관계수, p-value)가 반환된다 ex) spst.pearsonr(air['Temp'], air['Ozone']) 출력 : PearsonRResult(statistic=0.6833717861490114, pvalue=2.197769800200284e-22) 데이터프레임.corr() 데이터 프레임.corr() 매소드를 사용하면 해당 데이터프레임의 숫자형 변수끼리의 상관계수를 한 번에 구할 수 있다 ex) air.corr() sns.. 2023. 9. 2.
파이썬 기초 seaborn으로 숫자형 변수 산점도 한 번에 보기-pairplot sns.pairplot() sns.pairplot(데이터) 함수로 해당 데이터 내의 숫자열 들을 손쉽게 비교 할 수 있다 ex) sns.pairplot(air) 옵션에 kind = 'reg'를 넣으면 산점도에 추세선을 넣어준다 ex) sns.pairplot(air, kind='reg') 중복 데이터 보지않기 그래프를 보면 알 수 있겠지만 대각선을 기준으로 똑같은 그래프가 2개씩 있다 즉 중복으로 표시가 된다는 말이다 어차피 같은 산점도이므로 대각선 기준 위던 아래던 하나만 있어도 상관이 없다 이 때 중복되는 데이터를 보지 않고 싶다면 corner=True 옵션을 사용하자 ex) sns.pairplot(air, kind='reg', corner=True) 해당 옵션을 사용하면 대각선 위의 중복되는 산점도는.. 2023. 9. 2.
파이썬 pyplot, seaborn 산점도 그리기 - scatter,scatterplot,regplot plt.scatter() plt.scatter( x축, y축 ) plt.scatter( ‘x인덱스’, ‘y인덱스’, data = dataframe이름) 으로 산점도를 그릴 수 있다 ex) plt.scatter(x='Temp', y='Ozone', data= air) sns.scatterplot() sns.scatterplot( x축, y축 ) sns.scatterplot( ‘x인덱스’, ‘y인덱스’, data = dataframe이름) 으로 산점도를 그릴 수 있다 ex) sns.regplot sns.regplot( x축, y축 ) sns.regplot( ‘x인덱스’, ‘y인덱스’, data = dataframe이름) 으로 산점도를 그릴 수 있다 2023. 9. 2.
파이썬 기초 pyplot,seaborn - boxplot 그리기와 이해 boxplot 이해하기 box 플롯은 box와 수염, 이상치로 구성이 되어있다 box 내부의 선은 중앙값(q2) 을 의미하며 좌 우 변은 q1(25%) , q3(75%)를 의미한다 사분위 수를 그래프로 확인한다고 생각하면 편하다 중앙값이 평균이 아니라는 점을 주의하자 상자의 길이는 q1에서 q3까지의 길이로 이를 IQR이라고 한다 수염은 q1 - 1.5 IQR , q3 + 1.5 IQR 의 범위에서 최솟값과 최댓값의 위치를 그려준다 수염을 초과해 나와있는 그림들은 범위를 초과한 값들로 이상치로 분류되어 따로 그림이 그려진다 +이상치라고 무조건 배제하고 보지말고 이상치가 어떻게 나온 값인지 분석을 하고 버릴지 판단하는게 좋다 plt.boxplot() plt.boxplot(조회할 열, vert= True) .. 2023. 9. 2.
파이썬 기초 Seaborn 으로 밀도함수 그리기=sns.kdeplot() sns.kdeplot() import seaborn as sns 로 seaborn을 임포트하고 sns.kdeplot(조회할 열, fill = False) 코드로 사용 할 수 있다 fill은 기본값은 False이며 True로 바꾸면 그래프 아래 영역에 색을 넣어준다 밀도함수는 통계적 의미로는 다를 수 있지만 그냥 데이터의 분포를 확인할때 히스토그램과 비슷하게 사용 할 수 있다 예제) sns.kdeplot(data['MonthlyIncome'], fill=False) sns.kdeplot(data['MonthlyIncome'], fill=True) 밀도함수 그래프는 만약 데이터가 범주를 포함하는 데이터라면 범주별 숫자를 비교 할 때 사용하는 것도 가능하다 이 때는 sns.kdeplot(x=조회할 열, dat.. 2023. 9. 2.