꾸준히 공부해보자
차곡차곡
■ 자주쓰는 함수 정리모음
https://datawithu.tistory.com/32
■ [작업형3 ] Pclass, Gender, sibsp, parch를 독립변수로 사용하여 로지스틱 회귀모형을 실시하였을 때, parch변수의 계수값은?
정답
import pandas as pd
from statsmodels.formula.api import logit
df = pd.read_csv("/kaggle/input/bigdatacertificationkr/Titanic.csv")
formula = "Survived ~ C(Pclass) + Gender + SibSp + Parch"
model = logit(formula, data=df).fit()
model.params
실행값
Intercept 2.491729
C(Pclass)[T.2] -0.848152
C(Pclass)[T.3] -1.866905
Gender[T.male] -2.760281
SibSp -0.232553
Parch -0.049847
dtype: float64
■ [작업형3 ] 두 교육 방법의 효과 비교
연구자는 두 가지 다른 교육 방법이 학생들의 성적에 미치는 영향을 비교하고자 합니다. 연구자는 무작위로 선발된 20명의 학생들을 두 그룹으로 나누어 한 그룹에는 교육 방법 A를, 다른 그룹에는 교육 방법 B를 적용합니다. 교육이 끝난 후, 두 그룹의 성적을 비교하기 위해 독립 표본 t-검정과 ANOVA F-검정을 실시하려고 합니다.
다음은 두 그룹의 성적입니다: 다음의 두 가지 검정을 사용하여 두 교육 방법 간의 성적 차이가 통계적으로 유의한지를 검증하세요
- 독립 표본 t-검정을 실시하여 t 통계량을 구하세요.
- 독립 표본 t-검정을 실시하여 p-값을 구하세요.
- ANOVA F-검정을 실시하여 F 통계량을 구하세요.
- ANOVA F-검정을 실시하여 p-값을 구하세요.
import pandas as pd
df = pd.DataFrame({
'A':[77, 75, 82, 80, 81, 83, 84, 76, 75, 87],
'B':[80, 74, 77, 79, 71, 74, 78, 69, 70, 72],
})
from scipy import stats
print(stats.ttest_ind(df['A'], df['B']))
# 다음으로 ANOVA F-검정을 수행합니다.
stats.f_oneway(df['A'], df['B'])
TtestResult(statistic=3.1068522301122954, pvalue=0.006087373605949963, df=18.0)
F_onewayResult(statistic=9.652530779753763, pvalue=0.006087373605949924)
■ [작업형 1] 훈련데이터, 테스트데이터
model.predict
import
data.shape
data.hist()
data.describe()
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X1, y, random_state=42)
print(y_train.mean())
from sklearn.preprocessing import MinMaxScaler
scaler_minmax=MinMaxScaler()
scaler_minmax.fit(X_train)
X_scaled_minmax_train=scaler_minmax.transform(X_train)
import numpy as np
np.sqrt(MSE)
■ 간단한 탐색적 데이터 분석 (EDA)
print(df.shape)
print(df.isnull().sum())
df.head()
# 라이브러리 및 데이터 불러오기
import pandas as pd
import numpy as np
df = pd.read_csv('../input/titanic/train.csv')
# 간단한 탐색적 데이터 분석 (EDA)
print(df.shape) #무엇일까?
print(df.isnull().sum()) #null 값의 총합을 구하라?
df.head()
#### 범주변수의 변환 one-hot-encoding ###########
# dummy 변수 만들기
import pandas as pd
data = pd.read_csv('vote.csv')
data.head()
X1 = data[['gender','region']]
XY = data[['edu','income','age','score_gov','score_progress']]
- gender를 1,2를 male, female로 만들기
X1['gender'] = X1['gender'].replace([1,2], ['male', 'female'])
X1['region'] = X1['region'].replace([1,2,3,4,5], ['Sudo','Chungcheung' 'Youngnam', 'Honam','Others'])
X1['gender'].value_counts()
X1_dum = pd.get_dummies(X1) => 기능을 잘 모르겠음, one-hot-encoding
만들어준다
=> 명목변수를 0,1로 만들어준다
## dummy로 변경해준 변수를 기존 변수와 합쳐준다
Fvote = pd.concat( [X1_dum, XY], axis = 1 )
Fvote.shape
# sep는 변수와 변수의 구분자
Fvote.to_csv('Fvote.csv', index = False, sep=',', encoding='utf-8')