len과 sum의 차이
조건에 len을 쓰면 조건 값의 길이가 아닌 전체 행의 길이가 나오는데 len은 sum과 같이 조건식 계산 출력이 안되나요??
조건의 합을 구하려면 sum만 가능한가요?
print(sum(df['qsec'] >0.5))
-> 9
print(len(df['qsec'] >0.5))
-> 32
답변 2
0
len과 sum
조건의 결과는 True와 False입니다. True는 1, False는 0이에요
sum()을 사용하면 조건에 맞는 수만 구할 수 있어요!
len() 행의 총 수를 계산합니다.
따라서 False도 1개로 카운트 해요.
따라서 조건이 전혀 적용되지 않아요. 만약 len()을 사용하려면
print(len(df[df['qsec'] >0.5])) 과 같이 조건이 적용된 데이트프레임을 카운트하면 됩니다.
0
안녕하세요, 인프런 AI 인턴입니다.
석구님의 질문은 len 함수와 sum 함수를 사용하여 특정 조건을 만족하는 데이터의 개수를 어떻게 계산하는지에 대한 것으로 이해됩니다. 이에 대해 직접적으로 답변할 수 있는 정보를 제공드리겠습니다.
len 함수는 전체 요소의 개수를 반환합니다. 예를 들어, len(df['qsec'] > 0.5)의 경우, 조건식의 평가 결과(True 또는 False) 전체의 수를 반환하기 때문에 데이터프레임의 전체 행 길이를 반환합니다. 반면, sum 함수는 True와 False의 값을 각각 1과 0으로 취급하여, True(조건을 만족하는 경우)의 합계를 구합니다. 따라서 sum 함수를 사용하면 조건을 만족하는 데이터의 개수를 계산할 수 있습니다.
이와 관련하여, 비슷한 질문에 대한 답변을 찾을 수 있었습니다:
- “4회 기출유형 작업형1 2번문제”에서는
len과sum함수의 사용 차이와 각각의 활용법에 대해 설명하고 있습니다. 질문에서 언급된 예시는len을 사용할 때, true 조건을 만족하는 데이터 프레임을 먼저 만든 후 그 길이를 구하는 방식입니다. 이와 달리sum은 조건의 결과(True, False)를 직접 합산하여 조건을 만족하는 데이터 수를 구할 수 있는 방식입니다.
추가적인 예시는 “자주 활용되는 판다스 예제 quiz 관련 질문”에서도 찾아볼 수 있습니다. 여기서는 특정 조건(가격이 5000 이상인 데이터의 수)을 구할 때 len과 sum의 사용법과 결과의 차이에 대해 토론합니다.
이 내용들을 바탕으로, len(df['qsec'] > 0.5)는 조건식의 결과 개수를 모두 세는 것과 같고, sum(df['qsec'] > 0.5)는 조건을 만족하는 경우만 카운트하여 합산하는 차이가 있음을 알 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
이진분류에서 양성 클래스가 0일 때 평가 방법
0
4
1
원핫인코딩 전 train과 test 병합여부
0
14
1
수강기간 연장
0
15
1
29강 작업2형의 이상치 처리
0
46
2
수강기간 연장 문의드립니다!
0
50
2
9월에 실기출제기준 개정내역에 신설된부분
0
48
1
작업형2 모의문제2 결과값 관련 문의드립니다.
0
61
2
12회차 시험 실패 후 13회 도전 예정입니다.
0
47
1
random_state 값
0
66
2
강의 연장 문의 드립니다.
0
61
2
강의 연장 문의
0
59
2
오징어게임
0
63
1
object 컬럼이 여러 개인 경우 인코딩 전처리 방법
1
49
2
데이터 전처리 순서 관련
0
62
2
작업형2 모의문제 데이터 불러오기
0
60
2
강의 연장 부탁드립니다!
0
66
2
수강기간 연장 문의드립니다!
0
60
2
2회 기출유형(작업형1) Warning
0
75
2
describe()
0
54
2
수강기간 연장 문의
0
83
2
빅데이터분석기사 실기 인코딩
0
70
2
수강기간 연장문의
0
78
2
수강 기간 연장 문의 드립니다.. 부탁드립니다 ㅠㅠ
0
64
2
작업형2와 3의 목적
0
47
1





