실기
연습 화면을 불러오는 중…
연습 화면을 불러오는 중…
Python으로 준비하는 실기
코딩이 처음이라면 한 줄 실행부터.
설명 옆에서 직접 써 보고, 결과를 확인하며 배웁니다.
설치·가입 없이 이 화면에서 실행
코드를 실행해 안녕하세요를 출력해요.
처음 보는 코드를 읽고, 오류 메시지를 읽고, 짧은 코드를 스스로 고칠 수 있다.
표에서 원하는 숫자 하나를 뽑아내는 길을 스스로 찾을 수 있다.
전처리 조건을 그대로 코드로 옮겨, 문제가 요구한 자리수로 값을 낼 수 있다.
학습 데이터로 모델을 만들고 평가 데이터의 예측을 규격에 맞는 CSV 로 낼 수 있다.
검정통계량과 p-value 를 구하고 그 결과를 과장 없이 문장으로 옮길 수 있다.
도움말과 파일을 확인하며 혼자 문제를 풀고 제출할 수 있다.
배운 내용을 실전으로
wine-white.csv 는 백포도주 4,898개의 측정값이며 quality 는 0~10 품질 점수다.
quality 값별로 alcohol 의 평균을 구한다.
그 평균이 큰 상위 3개 그룹의 평균값을 모두 더해, 소수점 둘째 자리까지 반올림한 값을 답안에 적는다.
groupby('quality')['alcohol'].mean() 은 품질 점수마다 한 줄인 Series 를 만든다.sort_values(ascending=False) 는 평균값 으로 줄을 세운다. sort_index() 는 품질 점수로 세우므로 전혀 다른 세 그룹이 앞에 온다.head(3).sum(). 여기서 3 을 4 로 잘못 세면 값이 10 이상 튄다.import pandas as pd
df = pd.read_csv('wine-white.csv')
means = df.groupby('quality')['alcohol'].mean().sort_values(ascending=False)
print(round(means.head(3).sum(), 2))집계 결과를 평균값 기준으로 내림차순 정렬한 뒤 앞의 세 개만 더한다. 이 자료에서 평균이 가장 높은 세 그룹은 quality 9(12.18)·8(11.636)·7(11.368)이고, 합은 35.183936 이다. 네 번째 그룹 quality 6(10.575)까지 더하면 45.76 이 되므로 "상위 몇 개"를 정확히 세는 것이 답을 가른다.
head(3) 처럼 개수를 코드에 적는다.sort_index() 는 그룹 이름(품질 3·4·5…) 순서다. "평균이 큰 상위 3개" 를 묻는 문항에서 이걸 쓰면 오히려 평균이 낮은 세 그룹을 고른다.