본문 바로가기
카테고리 없음

빅데이터 분석 기사 실기 공부 자료 정리2

by 이켠작가 2024. 4. 16.
반응형

 
꾸준히 공부해보자
차곡차곡

■ 자주쓰는 함수 정리모음

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-검정을 실시하려고 합니다.
다음은 두 그룹의 성적입니다: 다음의 두 가지 검정을 사용하여 두 교육 방법 간의 성적 차이가 통계적으로 유의한지를 검증하세요

  1. 독립 표본 t-검정을 실시하여 t 통계량을 구하세요.
  2. 독립 표본 t-검정을 실시하여 p-값을 구하세요.
  3. ANOVA F-검정을 실시하여 F 통계량을 구하세요.
  4. 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)

 

Out[2]:
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')
 
 


 

■ minmax

 
import panda as pd
data = pd.read_csv("data/mtcars.csv")
printf(data['qsec'].head(3))
data('qsec'] = minmax_scale(data['qsec'])
printf(data['qsec'].head(3))
printf(data['qsec'].head(3) > 0.5 )
printf(sum(data['qsec'].head(3) > 0.5) )
def minmax(data):
data = (data -min(data))/(max(data) - min(data))
return data
 
data['qsec'] = minmax(data['qsec'])​
반응형