Photo by Jannis Lucas on Unsplash.
Every year, American high school students take SATs, which are standardized tests intended to measure literacy, numeracy, and writing skills. There are three sections - reading, math, and writing, each with a maximum score of 800 points. These tests are extremely important for students and colleges, as they play a pivotal role in the admissions process.
Analyzing the performance of schools is important for a variety of stakeholders, including policy and education professionals, researchers, government, and even parents considering which school their children should attend.
You have been provided with a dataset called schools.csv, which is previewed below.
You have been tasked with answering three key questions about New York City (NYC) public school SAT performance.
# Re-run this cell
import pandas as pd
# Read in the data
schools = pd.read_csv("schools.csv")
# Preview the data
schools.head()
# Start coding here...
# Add as many cells as you like...max_score = (80/100)* 800
print(max_score)best_math_schools = schools[schools["average_math"] >= max_score][["school_name", "average_math"]].sort_values("average_math", ascending=False)
print(best_math_schools)schools["total_SAT"] = schools["average_math"] + schools["average_reading"] + schools["average_writing"]
top_10_schools = schools[["school_name", "total_SAT"]].sort_values("total_SAT", ascending=False).iloc[:10]
top_10_schoolsborough_schools_total_sat_std = schools.groupby("borough")["total_SAT"].std()
borough = borough_schools_total_sat_std.idxmax()
max_std = borough_schools_total_sat_std.max()
print(borough,max_std)num_of_schools = schools[schools["borough"]==borough]["school_name"].nunique()
num_of_schoolsavg_sat = schools[schools["borough"]==borough]["total_SAT"].mean()
avg_satrow = [{"borough":borough,
"num_schools":num_of_schools,
"average_SAT":avg_sat,
"std_SAT": max_std}]
row[0]
for key,val in row[0].items():
if type(val) != str:
row[0][key] = round(val,2)
largest_std_dev = pd.DataFrame(row)
largest_std_dev