inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

(삭제 예정, 구 버전) 작업형1 모의문제1

작업형1모의문제1 - 문제2 질문

해결된 질문

234

종버

작성한 질문수 6

0

문제2의 세번째 조건이 "컬럼의 'gold' 값을 가진 데이터 수를 출력하세요!"라고 나와 있습니다.

강의에서는 아래 코드와 같이 sum으로 풀이해주셨는데 , sum 대신 len으로 작성해도 동일한 결과가 나옵니다.

sum이나 len 어떤 걸 사용해도 상관없는 건지 궁금합니다. 데이터 수이기 때문에 len이 더 정확한 답일까요?

print(sum(df[df['f3'] == 'gold']))

 

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

답변 2

0

퇴근후딴짓

sum()

데이터 프레임에서 조건에 따른 수를 알고 싶다 -> sum()을 사용하는 것이 좋습니다.

cond = df['a'] > 10

sum(df[cond]) 의 결과는 True(1)의 총합을 계산합니다.

전체 데이터 10개 중 10보다 큰 값이 5개라면 5가 출력됩니다.

 

len()

데이터프레임의 행의 수를 알고 싶다면 len()을 사용합니다.

cond = df['a'] > 10

len(df[cond]) 을 사용하면 False도 한 행이므로 모두 계산되어 나옵니다.

전체 데이터 10개가 출력됩니다.

 

count()

count()는 결측치를 제외하고 카운트합니다.

따라서 결측치 제거 후 len() 적용한 것과 동일합니다.

혹시 count() 사용하는 풀이를 혹시 제가 한 적 있을까요??
자칫 잘못 카운트할 가능성이 있어 입문자에게는 결측치 제거 후 len()을 사용하는 것을 추천합니다.


수치형 데이터: sum(), len(), count() 모두 사용 가능

범주형 데이터: len(), count()는 사용 가능하지만 sum()은 의미 없음

1

종버

sum()만 사용해서 풀이해주셨습니다!

답변 감사합니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. jongho님, 질문 주신 sum과 len의 사용에 대해 도움이 될 만한 정보를 찾았습니다.

먼저, sum 함수와 len 함수는 비슷한 상황에서 사용되어 비슷해 보일 수 있지만, 사용 목적과 방식에 차이가 있습니다. sum 함수는 주로 조건을 만족하는 항목들의 개수를 구할 때 사용되며, 조건의 결과(True/False)에 따라 합산을 진행합니다. 각 True는 1로, False는 0으로 계산하여 합산합니다. 반면, len 함수는 어떤 컬렉션(리스트, 데이터프레임 등)의 길이, 즉 요소의 총 개수를 구하는 데 사용됩니다.

여러분의 경우와 유사한 질문에 대한 답변이 여기에 있습니다:

  • 4-1, 문제 3번, 2번 풀이 sum(),len()에서, 데이터의 수를 구할 때 sum과 len 사용법의 차이를 설명해주고 있습니다. 기본적으로 sum(df["f3"] == "gold")의 사용은 df["f3"] == "gold" 조건을 만족하는 항목들이 True로 반환되며, 이 True값들(1로 간주)을 모두 합산하여 조건을 만족하는 항목의 개수를 나타냅니다. 반면, len(df[df["f3"] == "gold"])의 경우는 조건을 만족하는 행들로 구성된 새로운 데이터프레임을 생성하고, 이 데이터프레임의 길이(행의 수)를 반환합니다. 두 방식 모두 조건을 만족하는 데이터의 개수를 구하는 데 사용될 수 있으나, 실행 과정에서의 처리 방식에 차이가 있습니다.

특별히, 작성하신 코드의 컨텍스트를 기준으로 sum을 사용할 경우 오류가 발생할 수 있습니다. sum 함수는 Boolean 값을 합산할 때 주로 사용되기 때문에 sum(df[df['f3'] == 'gold'])는 예상치 못한 결과를 초래할 수 있습니다. 아마 예제 코드에서 의도하신 바는 sum과 len을 혼동하신 것으로 보이며, 해당 조건에서 데이터의 수를 구하기 위해서는 len(df[df['f3'] == 'gold'])가 적절한 코드가 됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

수강기간 연장이 가능한지 양해를 구하며 문의를 드립니다.

0

12

1

작업형2 모의문제2에서 drop이랑 인코딩

0

20

1

인코딩을 다 꼭 해봐야하는지

0

25

2

안녕하세요? 강사님 질문있습니다.(인코딩관련)

0

56

2

이진분류에서 양성 클래스가 0일 때 평가 방법

0

46

2

원핫인코딩 전 train과 test 병합여부

0

50

2

수강기간 연장

0

62

2

29강 작업2형의 이상치 처리

0

64

2

수강기간 연장 문의드립니다!

0

64

2

9월에 실기출제기준 개정내역에 신설된부분

0

55

1

작업형2 모의문제2 결과값 관련 문의드립니다.

0

66

2

12회차 시험 실패 후 13회 도전 예정입니다.

0

54

1

random_state 값

0

71

2

강의 연장 문의 드립니다.

0

65

2

강의 연장 문의

0

61

2

오징어게임

0

68

1

object 컬럼이 여러 개인 경우 인코딩 전처리 방법

1

49

2

데이터 전처리 순서 관련

0

64

2

작업형2 모의문제 데이터 불러오기

0

62

2

강의 연장 부탁드립니다!

0

67

2

수강기간 연장 문의드립니다!

0

64

2

2회 기출유형(작업형1) Warning

0

79

2

describe()

0

61

2

수강기간 연장 문의

0

86

2