해결된 질문
작성
·
36
0
문제8, 문제9 풀이에서 numeric_only=True 옵션에 대해서
궁금해서 질문해요
문제 8번 풀이에서df =df.groupby(['city','f2']).sum(numeric_only=True).reset_index()
df =df.groupby(['city','f2']).sum(numeric_only=True).reset_index()
에서는 컬럼 'city' 와 'f2' 컬럼이
수치형 자료라 numeric_only=True 를 설정해야 하는 건가요!?
문제 9번 풀이에서 groupby 로 월 별 데이터 개수를 구할 때는 count(numeric_only=True) 로 설정하면 오류나는 이유는 뭔가용..??? month 가 숫자형이어서 그런가요 아니면 count 가 설정할 필요가 없어서인가요 ? ㅠ.ㅠ
numeric_only=True 를 어느 때 써야하고 안 써야하는지 구분하는게 정확히 어떤 기준인지 궁금합니다
답변 2
0
sum()
, mean()
, median()
, std()
, min()
, max()
, var(), corr()
등에서 필요합니다.
df.sum(), mean(), median()과 같이 합계, 평균, 중앙을 구할 때 df에 문자 컬럼과 숫자 컬럼이 함께 있다면 필요해요!
그렇지만 df에 숫자 컬럼만 있거나 또는 df['숫자컬럼'].sum()과 같이 컬럼을 지정한다면 필요없습니다.
count()는 개수를 세는 함수로 필요가 없어요!
0
안녕하세요, 인프런 AI 인턴입니다.
jnj0713님, 질문해주신 내용에 대해 답변해 드리겠습니다.
numeric_only=True
옵션에 대한 설명numeric_only=True
의 역할: pandas
의 메소드, 특히 sum()
와 같은 집계 함수에서 numeric_only=True
옵션은 수치형 데이터만을 대상으로 연산을 수행하도록 지정합니다. 이는 문자열 데이터가 포함된 열을 무시하고, 수치형 열만 계산에 포함하게 합니다.
문제 8번 코드 설명:
groupby
를 이용하여 데이터를 ‘city’와 ‘f2’ 열 기준으로 그룹화하고, sum(numeric_only=True)
를 사용하여 그룹별 합계를 계산했습니다.numeric_only=True
를 사용하는 이유는 그룹화된 결과에서 수치형 열의 합계만을 계산하겠다는 의도입니다. 열의 이름이 문자형 데이터일 수도 있기 때문에, 계산하고자 하는 열이 어떤 데이터 타입인지에 따라 의도하지 않은 연산을 방지할 수 있습니다.문제 9번에서 count()
함수 사용 문제:
count()
함수는 기본적으로 열의 데이터 개수를 세는 함수로, 화면에 보이는 전체 데이터를 대상으로 하기 때문에 numeric_only
옵션을 사용할 필요가 없습니다. 이는 count()
함수가 수치형 여부에 상관없이 각 열의 유효한 값(결측치가 아닌 값)들을 세기 때문입니다.언제 numeric_only=True
를 사용할 것인가?:
sum()
, mean()
, median()
과 같은 집계 함수에서 문자열과 숫자가 혼합된 열에 대해 계산을 수행할 때, 수치형 데이터만 합산 또는 평균 등을 구하고 싶을 때 사용하십시오.count()
), numeric_only
옵션을 사용하지 않습니다.이미지 내용과 코드 분석:
numeric_only=True
를 통해 수치형 데이터 관리를 할 수 있다는 점이 강조된 코드로 보입니다. 그러나, count()
함수와 같이 모든 데이터 타입에 적용할 수 있는 메소드에서는 해당 옵션을 사용하지 않습니다.질문에 대한 유사한 답변이 제공된 게시물 몇 가지를 추천드리니, 더 깊이 있는 이해를 위해 참고하시는 것도 좋을 것 같습니다:
이들이 경고와 연관된 문제를 해결하는 다양한 방법들을 다루고 있으니 참고해 보세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.