inflearn logo
강의

Course

Instructor

[Side Project After Work] Big Data Analysis Certification Practical Exam (Type 1, 2, 3)

3rd Session Past Exam Type (Task Type 1)

결측치가 있는 행을 제거할 때

Resolved

314

dudgus4532234

23 asked

0

df = pd.DataFrame({ '날짜': ['20220103', '20220105', None, '20230127', '20220203', '20220205', '20230210', '20230223', '20230312', '20230422', '20', '23'], '제품': ['A', 'B', None, 'B', 'A', None, 'A', 'B', 'A', 'B', 'A', 'A'], '판매수': [3, None, 5, 10, 10, 10, 15, 15, 20, None, 30, 40], '개당수익': [300, 400, 500, 600, 400, 500, 500, 600, 600, 700, 600, 600]

 

판매수 컬럼에 결측치가 있는 행을 제거하라고 할 때,

 

  1. df = df['판매수'].dropna()

  2. df = df.dropna(subset = '판매수')

1번과 2번의 차이는 무엇인가요? ㅠㅠ

python 머신러닝 빅데이터 pandas 빅데이터분석기사

Answer 2

2

Jason

1번은 데이터프레임 중 '판매수' 컬럼(df['판매수'], Series)에 대해서만 결측치 처리 (결측치를 포함하고 있으면 행 삭제) 후 시리즈 형태로 출력되도록 하는 코드인거 같고,

  • 결과값이 판매수 컬럼만 보임

 

2번은 전체 데이터프레임(df, DataFrame)에 대해서 '판매수' 컬럼에 결측치가 있는 행은 삭제 처리(subset = '판매수') 후 데이터프레임 형태로 출력되도록 하는 코드인거 같습니다.

  • 결과값이 전체 데이터프레임으로 보임

0

roadmap

Jason님 답변이 맞습니다.

  1. df = df['판매수'].dropna() 는 잘못된 방식입니다. 전체 df가 아닌 df['판매수']에 대해 결측치를 처리한 결과를 반환합니다. df로 최종 대입된 값은 결측행을 제거한 판매수 컬럼만 있습니다.

     

작업형 1 배경지식 질문

0

2

1

옳게 풀은건지 질문드립니다!

0

3

0

roc_auc_score

0

5

1

추가질문 합니다

0

11

1

시험환경 구름

0

11

1

2유형 질문드려요

0

8

1

RandomForest vs lgb

0

18

1

전처리 관련질문

0

13

2

작업형3 기출

0

13

1

유형2에서 데이터분할 생략 가능여부

0

20

2

9회 기출 유형3 질문

0

15

1

lgb 기초편

0

10

1

괄호 사용

0

15

1

작업형 2 데이터 전처리 질문

0

19

1

11회 기출 유형 작업형1 문제 3-1

0

16

0

예시문제 작업형2 (ver2023) 질문입니다

0

16

1

Data type에 따른 처리

0

15

2

데이터 전처리 관련

0

16

2

시험에서 문제 불러오기

0

18

2

2번문제 출력값 질문

0

23

2

pd.get_dummies()가 bool로 반환

0

18

2

대응표본검정 레빈

0

23

3

단일표본검정 문제 유형

0

23

2

[작업형 3] 6~7. 카이제곱 검정

0

23

2