타이타닉 연습문제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 주가(앤비디아합병)/
'살콤아내 자기계발 > 파이썬' 카테고리의 다른 글
파이썬 머신러닝 완벽가이드 2주차 정리 (데이터 전처리 118pg~, ) (0) | 2021.04.28 |
---|---|
파이썬 머신러닝 완벽가이드 2주차 정리 (사이킷런 87pg~, ) (0) | 2021.04.27 |
파이썬 머신러닝 완벽가이드 1주차 정리 (판다스 60pg~, 타이타닉 실습) (0) | 2021.04.23 |
파이썬 머신러닝 완벽가이드 1주차 정리 (판다스 39pg~), 타이타닉 실습 (0) | 2021.04.22 |
파이썬 머신러닝 완벽가이드 1주차 정리 (넘파이 15pg~38pg) (0) | 2021.04.21 |