변수명?? 설정관련 질문
10회 기출 작업형1
1. 문제 1에서
df=df.groupby('sub_topic')['is_correct'].mean()
df.sort_values('is_correct', ascending=False).drop_duplicates()
이렇게 했는데 오류가 나타나던데,, 이렇게 하면 안되는건가요?
해설에는
result = acc.sort_values(ascending=False).drop_duplicates()
sort_values('컬럼명', ~~)이라고 보아서,, 해설처럼 ('컬럼명')을 안해도되나요?
2. 문제2-2에서
cond=df['year-month']=='2024-10'
targetdata=df[cond]
df.groupby('category')['price'].sum()
이렇게 해도 괜찮을까요?
targetdata.groupby~
df.groupby
차이점을 정확하게 잘 르겠습니다ㅠ df를 일단 계속 쓰다보니까 헷갈려서요ㅠ
변수명 설정? 하는게 좀 헷갈리는 것 같습니다ㅠ
groupby나 cond하고 나서 새로운 변수?로 설정하는것인가요?
뭔가 df=df~~랑 헷갈리는 것 같습니다ㅠ
좋은강의 감사드립니다!
답변 2
0
.sort_values('컬럼명', ~~)으로 사용하는 것이 일반적인데 데이터프레임에서만 가능해요
이 상황은 컬럼이 1개 밖에 없는 시리즈 형태입니다 (acc 출력해서 확인 요청) 이때는 컬럼명 지정이 불가능합니다.
지금까지 데이터프레임 형태로만 만들어져서 혼란스러울 수도 있겠네요! 그렇다고 데이터 프레임으로 만드는 건 더 복잡해질 것 같아요! 방법1이 어렵다면 2로 부탁드립니다.데이터 변경 작업 후, 변수에 든 값을 모두 print()출력해서 확인해 보시면 좋을 것 같아요!
헷갈린다면 targetdata 를 사용하지 말고 df로만 사용해주세요 🙂
cond = df["year_month"] == target_ym
df = df[cond]
cate = df.groupby("category")["price"].sum()
print(cate.max())
0
안녕하세요, 인프런 AI 인턴입니다. 합격님.
여러 질문과 혼동되는 부분이 있으신 것 같습니다. 각 부분에 대해 자세히 설명드릴게요.
1. groupby, sort_values과 drop_duplicates의 조합
df.groupby('sub_topic')['is_correct'].mean() 을 수행한 후, sort_values 와 drop_duplicates 메서드를 사용할 때의 문제점은, 각 메서드가 어떠한 객체로 작동하는지에 따라 발생할 수 있습니다.
sort_values('is_correct', ascending=False)는DataFrame에서만 사용 가능한 메서드가 아니라Series에서도 쓸 수 있습니다. 하지만, 보통DataFrame에 적용하여 원하는 컬럼을 정렬합니다.
- 만약 groupby 연산 후 나온 결과에 대해
sort_values를 바로 사용하려면 정렬하고자 하는 데이터가DataFrame형태가 되어야 합니다.groupby에 이어지는 연산이Series타입일 때, 특정 컬럼명을 지정해 사용하면 안 됩니다.
해결 방법은 mean() 결과가 Series일 수 있으므로, 이를 reset_index()로 변환해 DataFrame으로 만든 후, sort_values를 사용하여 정렬하고 drop_duplicates를 수행하는 것입니다.
2. 조건과 그룹별 연산
조건 cond=df['year-month']=='2024-10' 을 설정하고 나서 이를 사용해 새로운 DataFrame을 만들어 작업하는 것이 일반적인 방법입니다.
targetdata.groupby('category')['price'].sum()과 같이 조건을 사용하여 축소한 데이터에 대해 그룹 연산을 수행하는 것이 안전하며, 원래 데이터프레임df에 대한 변경을 최소화할 수 있습니다.
targetdata와df에서 각각groupby를 사용할 경우, 적용 범위가 달라집니다.targetdata는 이미 필터링된 데이터를 대상으로 하고,df는 원본 데이터를 대상으로 합니다.
변수명을 설정할 때, 연산 결과를 명확히 하여 변수에 할당하고, 이후 단계별로 체계적으로 사용할 수 있도록 관리하는 것이 중요합니다.
관련 내용 도움이 될 만한 URL:
- Python Pandas Tutorial: groupby and Sort Python Pandas: 이 URL에서는 Python과 Pandas에서의
groupby와sort_values활용에 대한 설명이 잘 나와 있습니다.
이해를 돕기 위해 비슷한 유형의 질문 및 답변 링크를 제공하였으니, 더욱 도움이 되셨으면 좋겠습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
수강 연장 문의드립니다.
0
20
2
강의 연장 문의
0
27
2
수강 신청 연장 문의드립니다.
0
35
2
작업형 1번문제... 환경관련
0
30
2
12회 기출은 언제 업데이트 될까요??
0
36
2
8/6 작성한 연장문의 질문글에 대한 재요청
0
38
2
수강기간 연장 문의
0
39
2
수강기간 연장문의
0
37
2
수강기간 연장 요청 문의드립니다
0
38
2
수강 기간 연장 문의
0
47
2
수강연장 가능 문의 (기간 약 한달반)
0
60
2
수강기간 연장 가능할까요 선생님
0
74
2
Section15. 수업에 사용하는 데이터 주소가 다 보이지 않아서 실습을 위한 데이터를 다운 받지 못하고 있습니다.
0
56
3
수강연장요청 문의
0
90
2
아무래도 다음 시험 연장은 어렵겠죠?
0
108
2
빅분기 12회 결과 관련 문의
0
112
1
책이랑 강의랑 순서나 예제가 다른것 같네요
0
81
2
수강연장 문의
0
105
2
재검토 요청 방법 좀 알려주셔요...-.-;;
0
106
2
12회 실기 질문(작업형 2)
0
92
2
뒤로가기 버튼 같은 것이 있나요?
0
66
1
강의 연장 문의
0
99
2
출력값 질문
0
73
2
수업노트가 어디에 있나요?
0
63
1





