Spark에서 결측치가 있는 칼럼의 결측치 개수 셀 때 질문입니다!
619
작성한 질문수 77
안녕하세요! 먼저 설 명절 복 많이 받으시길 바랍니다 ㅎㅎ
해당 강의에서 Spark 데이터프레임에서 결측치가 있는 칼럼의 결측치 개수를 카운트할 때 pyspark.sql.functions 모듈에 있는 count, when 메소드를 활용하잖아요!?
예를 들어, 아래와 같은 코드가 있다고 할 때,
titanic_sdf.select( [ count( when( col(c).isNull(), c ) ) for c in titanic_sdf.columns ] )
강의에서 설명해주실 때, count 메소드는 특정 칼럼의 값이 Null이면 그 Row를 카운트하지 않는다고 하셨는데요!
그러면 위와 같이 when( col(c).isNull(), c ) 라는 문법은 col(c) 라는 칼럼의 값이 Null일 경우, c 값 즉, Null인 값으로 하라는 의미이잖아요? SQL로 바꾸자면,...
CASE WHEN c IS NULL
THEN c // 어차피 c 가 Null 값
ELSE END
이잖아요!? 그러면 여기서 c 라는 값 자체가 어차피 Null 인데, count 메소드는 어떻게 Null인 Row 개수를 셀수 있는 건가요? count 메소드는 Null 값인 Row를 세지 않는다고 했는데...
혹시 질문 내용이 이해가 안가신다면 답글 달아주세요...!
답변 1
1
안녕하십니까,
음, 이건 제가 강의에서 설명을 잘못드렸습니다. 말씀하신대로 count는 null을 포함하기 때문에 그런 식으로 이해가 되게 설명드리면 안되는 부분이었습니다.
when( col(c).isNull(), c )에서 c는 컬럼 c 값이 아니라 문자열 c입니다. 그러니까 컬럼명칭 문자열 입니다. 가령 Age 컬럼의 null 값을 추출하는 것이라면
count(case when Age is null then 'Age' else Null end) 입니다. 그래서 null값을 count할 수 있습니다.
좋은 지적 감사합니다. 조만간 시간 봐서 해당 내용을 수정하도록 하겠습니다.
강사님 안녕하세요 ㅎdatabricks환경에 대한 설
0
58
3
데이터 브릭스 이슈
0
110
2
데이터 브릭스 가입
0
98
2
pyspark local 설치
0
99
2
community edition 가입 문의
0
110
2
데이터 로드 및 로딩 된 파일 데이터 목록 조회 방
0
168
2
클러스터 버전 설정
0
134
3
instacart market basket analysis
0
186
3
spark 추가 학습 관련 질문
0
233
2
MLOps 관련 MLFLow 및 Databricks 모델 서빙
0
398
1
train파일 업로드 중에 해당 경로가 없다고 뜹니다
0
374
2
강의가 재생되지 않음
0
265
2
후속 강의 계획 질문드립니다.
0
372
1
spark_xgboost_lightgbm 강의부분 관련
0
474
1
spark환경에서 데이터 수정에 관하여 질문이 있습니다.
1
322
1
Spark를 이용하여 binary file -> parquet, csv 변환 가능여부
0
571
1
SPARK 2 강의 오픈
0
498
1
Spark ML 모델 서빙
0
570
1
mac os ) zip 파일 dataframe 오류
0
672
1
ModuleNotFoundError : No module named 'mmlspark' - 20230218
0
630
1
TrainValidationSplit과 randomSplit 사용 질문
0
401
1
현업에서는 scala-spark를 사용하나요? py-spark를 사용하나요?
0
515
1
cluster 생성 Database runtime version 질문
0
275
1
Pandas vs Spark: 비용, 처리시간 비교
0
1237
1





