DataFrame 평균 구하기
PDF로 보기문제 설명
여러 학생들의 과목 점수가 표 형태로 주어진다. pandas 라이브러리를 이용하여 각 학생의 평균 점수를 구하고, 그 결과를 출력하라. • 입력은 CSV 형식의 문자열이다. (쉼표 구분) • 첫 행은 과목 이름이고, 이후 행들은 "이름,점수1,점수2,...,점수N" 형태이다. • 출력은 "이름 평균점수" 형식으로, 평균점수는 소수점 둘째 자리까지 반올림하여 출력한다. • 학생 순서는 입력 순서를 따른다.
import sys
import pandas as pd
def main():
data = sys.stdin.read().strip().splitlines()
# CSV 문자열을 DataFrame으로 읽기
df = pd.DataFrame([row.split(',') for row in data[1:]], columns=data[0].split(','))
for col in df.columns[1:]:
df[col] = df[col].astype(float)
df['avg'] = df.iloc[:, 1:].mean(axis=1)
for _, row in df.iterrows():
print(f"{row['Name']} {row['avg']:.2f}")
if __name__ == "__main__":
main()
입력예시 Name,Math,English,Science Alice,90,80,70 Bob,100,95,90 Charlie,60,70,80
출력예시 Alice 80.00 Bob 95.00 Charlie 70.00
코멘트