작업형1_연습문제 7번 관련입니다.
1
1 asked
20번 강의 > 7번 문제를 풀던 중,
모든 나이에 1을 더하고, cond1 cond2를 설정한 뒤 각 조건의 절댓값 차이를 result 변수에 넣고 값을 확인했습니다.
값이 783.37이 나왔습니다. 선생님께서는 정답을 263.13으로 말씀 주셨습니다.
코드가 같은데, 값이 다른 이유가 궁금합니다.
제가 쓴 코드는 아래에 첨부하였습니다.
df = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p1/type1_data1.csv") df['age'] = df['age'] +1 cond1 = (df['age']>=20) & (df['age']<30) cond2 = (df['age']>=30) & (df['age']<40) result = abs(df[cond1]['views'].mean() - df[cond2]['views'].mean()) print(result) print(round(result, 2))
Answer 1
0
안녕하세요, 인프런 AI 인턴입니다. 낭낭낭님.
문의하신 코드에 대해 몇 가지 검토해보겠습니다. 주어진 코드의 주요 로직은 나이(age)를 1 증가시킨 후 특정 나이 구간에서 조회수(views)의 평균을 계산하여 두 구간의 차이를 얻는 것입니다.
코드 분석 및 문제 해결:
데이터 소스 확인: 사용하신 데이터셋(
type1_data1.csv)의 원본을 확인하고 거기서 각 조건(cond1,cond2)에 해당하는 데이터가 있는지, 그리고 그 데이터의 분포가 어떻게 되어 있는지 확인해야 합니다. 특정 데이터 분포나 이상치에 따라 평균 값이 달라질 수 있기 때문입니다.조건 확인 및 절댓값 적용:
cond1과cond2조건에 만족하는 데이터가 제대로 필터링되는지 확인해 보세요. 두 구간에 데이터가 충분히 포함되지 않아서 예상과 다른 결과를 출력할 수 있습니다.구간별 데이터 확인:
print(df[cond1])및print(df[cond2])를 사용해 필터링된 데이터의 조회수(views) 평균 값을 비교하여 갑작스러운 차이의 원인을 파악하는 것이 좋습니다.
유사한 질문과 해결 방법에 대해 도움이 될 수 있는 자료 링크를 제공하겠습니다:
- 4-2 type1 작업형1 6번 문제 문의드립니다.: 데이터 필터링과 조건 설정에서 차이가 발생할 때 참고할 수 있는 자료입니다.
- 작업형1 모의문제2 6번: 필터링 조건들을 설정하는 과정에서 어떻게 정확한 결과를 얻는지에 대한 예시가 포함된 글입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
데이터 프레임 슬라이싱 혹은 데이터 선택하기가 어렵습니다.
0
2
1
크로스 밸리데이션 질문
0
13
2
로지스틱 회귀분석 질문
0
13
2
수치형 데이터만 선택하여 푸는 경우에 오답확률이 높아질까요?
0
21
2
2유형 object 컬럼 인코딩 관련 질문
0
29
2
하이퍼파라미터 변수
0
27
2
52강 이원분산분석
0
24
2
실제시험환경에서 작업형1,2,3의 문제풀이 순서
0
28
2
독립표본검정
0
25
2
tranform을 쓰라는 힌트는 어디서 얻을 수 있나요??
0
35
2
df.describe() 사용을 자제해야할까요?
0
31
2
shape 결과에 대한 문의
0
37
2
자료 문의
0
30
2
8 회귀 11번
0
26
2
심화 강의 관련 질문
0
35
2
빈도수 구하는 것 질문
0
26
2
커리큘럼을 따로 인쇄할 수 있는 방법이 있을까요?
0
38
1
작업형2 머신러닝 문제풀이 중 test 데이터 에러 문의
0
33
2
수강연장가능문의
0
44
2
59. 11회 기출 유형 작업형 1 - 문제2 관련
0
37
2
원핫인코딩 슬라이싱 결과
0
32
2
random_state 값이 궁금합니다!
0
38
2
수강기간 연장 가능 여부 문의드립니다
0
58
2
city 컬럼 삭제
0
42
2

