반응형
indexing
import pandas as pd
df = pd.read_csv('data/iphone.csv', index_col=0)
iPhone X, iPhone 8 정보 가져오기. (행 2개 가져오기)
1차원은 Series
2차원은 DataFrame
연속된 row를 출력해보자
iPhone X까지 출력하기
df.loc[:'iPhone X']
연속된 column(메모리 칼럼 ~ Face ID 칼럼)을 출력해보자.
df.loc[ : , '메모리' : 'Face ID' ]
Boolean
0,2,3,5 칼럼만 출력하기
df.loc=[[True, False, True, True, False, True , False]]
전체 칼럼에 대해 Boolean값을 작성하지 않았다면?
작성하지 않은 칼럼들에 대해선 False 적용.
but boolean값을 하나하나씩 나열하는건 비효율적.
고로 칼럼에 대해 조건을 지정한다.
예를 들어 디스플레이의 크기가 5이상인 row를 출력하고 싶다면
df['디스플레이'] > 5
Face ID가 Yes인 것만 출력하고 싶다면.
df['Face ID'] == 'Yes'
디스플레이의 크기가 5이상이면서 (and) Face ID가 Yes에 해당되는 것을 출력하고 싶다면?
(df['디스플레이'] > 5) & (df['Face ID'] == 'Yes')
조건 필터링
1. Face ID가 Yes인 것만 필터링해보자.
df.loc[df['Face ID'] == 'Yes']
2. 디스플레이의 크기가 5이상이면서 Face ID가 Yes에 해당되는 것을 필터링해보자.
df[(df['디스플레이'] > 5) & (df['Face ID'] == 'Yes')]
Q1 ) 'KBS'에서 시청률이 30이 넘은 데이터만 확인해보려면 어떻게 하면 될까요?
최종 결과, 다음처럼 나타나야함.
현재 DataFrame 출력화면
기존 코드
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
# 작성하시오
정답
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
df_kbs = df['KBS'] # KBS 칼럼만 뽑기
df_kbs[df_kbs > 30] # 칼럼 조건에 해당되는 것만 출력
Q2 ) 💖 시청률 확인하기
주어진 데이터에서 SBS가 TV CHOSUN보다 더 시청률이 낮았던 시기의 데이터를 확인
주어진 데이터
최종 결과 데이터
1차 과정 (복잡하게 한 것)
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
df_sbs = df['SBS'] # sbs 칼럼만 저장
df_ch = df['TV CHOSUN'] # tv조선 칼럼만 저장
# df로 만들기 위한 전과정
dict1 = {
'SBS' : df_sbs,
'TV CHOSUN' : df_ch
}
new_df = pd.DataFrame(dict1)
new_df
1차 과정 (간결)
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
new_df = df.loc[ : , 'SBS':'TV CHOSUN']
new_df
1차 과정 실행 결과
2차 과정
- ⓐ 칼럼간의 조건 비료로 boolean값 도출
- ⓑ boolean값에 해당되는 행만 출력
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
new_df = df.loc[ : , 'SBS':'TV CHOSUN']
new_df
# 칼럼간의 조건 비교
new_boolean = new_df['SBS'] < new_df['TV CHOSUN'] # Boolean
new_df[new_boolean] # new_df에서 boolean True인 행만 출력
반응형
'● 인공지능, 분석 > 21.07 코드잇_DS과정' 카테고리의 다른 글
3-8. DataFrame 이론 | DafaFrame Indexing 정리 (0) | 2021.09.10 |
---|---|
3-7. DataFrame 이론 및 실전 | 위치로 인덱싱(iloc) (0) | 2021.09.10 |
3-5. DataFrame 이론 및 실전 | indexing, 칼럼 출력, 2개 파일 통합 (0) | 2021.09.10 |
3-4. DataFrame 실전 | DataFrame으로 파일 출력하기 (0) | 2021.09.10 |
3-3. DataFrame 이론 | pandas의 데이터 타입 (0) | 2021.09.09 |