살콤아내 자기계발/파이썬

파이썬 머신러닝 완벽가이드 2주차 정리 (타이타닉실습 2_isnan, groupby)

살콤아내 2021. 4. 23. 12:38
728x90
반응형

 

train.csv
0.06MB
파이썬머신러닝완벽가이드_타이타닉 최종실습.py
0.00MB

 

타이타닉 연습문제1 : SibSp가 같은 나이의 평균으로 빈 Age값을 채우시오.

Step 1) 타이타닉 데이터를 데이터 프레임 평태로 업로드

Step 2) null 값이 얼마나 있는지 확인

Step 3) Column별 데이터 분포 확인

Step 4) Pclass value_count 확인

Step 5) Age null값을 채우되 SiBsp가 같은 나이의 평균으로 채운다 (if, lambda 활용)

 

 

 

 

36줄~

if조건문: x[SibSp]의 각 값을 만족하는 조건에 대해

result=titanic_df   [titanic_df  ['SibSp'] == 0] ['Age'].mean( )

결과값은  titanic_df(데이터프레임)에서 / titanic_df의 'SibSp'값이 0에 해당되는 불린값의 /'Age' Column의 평균값이다.

 

* 함수 isna( )는 판다스에서 제공하며 np.isnan( )는 넘파이에서 제공

*넘파이에서 iloc, loc와 더불어 df의 인덱스를 불러오기 위해서는 [ ] 칼럼명을 사용한다. 또한 불린 인덱싱 기능도 있다.(교재 62pg 참고) 

* SibSp가 8인 경우 Age값을 구할 수 없기 때문에 나이를 8로 임의 계산한다.

 

58줄

titanic_df에 'new_Age' Column을 추가하고 lambda함수가 반영된 값을 넣어라.

axis=1 는 Column방향으로 한줄 씩 x값을 대입하게 된다. 즉, Age의 값이 한줄씩 대입되게 된다.

만약 axis=0이라면 Row방향으로 한줄 씩 x값이 대입되게 되어 한 사람의 각각의 정보가 입력된다.

 

60줄 (결과를 검증하는 방법)

isna( ) 와 isnull( )은 동일한 함수다. 빈 값을 찾는 함수.

notnull( )은 null값이 아닌 값에 True를 반환한다.

any( ) 하나라도 True가 있으면 True반환

all( ) 은 하나라도 False값이 있으면 False 반환

 

 

 

 

힌트 1)

 

 

 

*나의 습작 (groupby랑 mean함수를 사용하려고 하는데 잘 안됨)

 

 

 

타이타닉 연습문제2 : Pclass를 groupby하여서 Age_max, Age_min, Age-mean, Parch_max, Parch_min, SibSp_max, SibSp_min을 구하여라

 

힌트) 여러개의 Column에 서로다른 Agg함수를 사용할 수 없다. 그러므로 따로따로 구한다음 합쳐야 한다.

 

 

내가 고안한 코딩

 

선생님의 코딩

 

groupby agreegation은 max_format = {'Age':'max', 'Parch':'max', 'SibSp':'max'} 이렇게 딕셔너리 타입으로 

내가 원하는 Column의 내가 원하는 agg함수를 적용할 수 있다.

 

 

 

 

참고) 람다함수사용 할 때 .apply(lambda x: func(x)) 포맷을 잘 숙지하기

func(x)함수를 정의할 때

def func(x)

    x['Age'] 

 

여기에서 x['Age']의 데이터 타입은 특정 Column의 한 element를 말한다. 이 데이터타입은 Object형 (string)이다.

 

 

 

 

 

 

반도체 주식

TSMC주가/ARM 주가(앤비디아합병)/

728x90
반응형