大学排名浮沉:对US News 大学排行榜(1984-2023) 大学排行数据的分析
本文探讨了US News 大学排行榜中1984-2023年的大学排名变化。通过对数据的深入分析,我们了解了哪些学校的排名在这期间波动最大,哪些学校的排名持续上升,以及哪些学校的排名持续下降。
研究背景
最近,US News 2024年的大学排行榜出炉,受到了广泛关注。与往年不同,今年的排行榜调整了排名方法。具体的调整内容如下:
取消了五个长期存在的评价因素,并调整了其他几个因素的权重。 加入了一些新的评价指标。特别是,加大了对学校学生不同社会经济背景所取得学位的重视,并利用了直到最近才可用的研究生成果信息。 所有学校的数据都经过标准化处理,然后根据预定的权重进行加权和汇总,以确定每个学校的总分。然后,总分进行重新缩放,以便每个排名中的最佳表现者显示总分为100。其他学校的总分则以0-99的范围显示,反映它们与该排名中的最佳表现者的距离。
具体权重如下:
US News 2024年大学排行榜评价指标权重
指标 | 有可用的SAT/ACT的学校 2024权重 | 没有可用的SAT/ACT的学校 2024权重 | 2022-2023权重 |
---|---|---|---|
毕业率 | 16% | 21% | 17.6% |
大一留校率 | 5% | 5% | 4.4% |
毕业率表现 | 10% | 10% | 8.0% |
Pell助学金毕业率 | 5.5% | 5.5% | 2.5% |
Pell助学金毕业率表现 | 5.5% | 5.5% | 2.5% |
第一代大学生毕业率 | N/A | N/A | N/A |
第一代大学生毕业率表现 | N/A | N/A | N/A |
借款者债务 | 5% | 5% | 3% |
大学毕业生收入高于高中毕业生 | 5% | 5% | 0% |
同行评估 | 20% | 20% | 20% |
教师薪酬 | 8% | 8% | 7% |
师生比例 | 4% | 4% | 1% |
全职教师 | 3% | 3% | 1% |
财务资源 | 8% | 8% | 10% |
标准化测试 | 5% | 0% | 5% |
每篇论文的引用量 | 0% | 0% | 0% |
权重引用影响 | 0% | 0% | 0% |
在前5%的期刊中被引用的论文数 | 0% | 0% | 0% |
在前25%的期刊中被引用的论文数 | 0% | 0% | 0% |
班级规模 | 0% | 0% | 8% |
最高学位教师 | 0% | 0% | 3% |
校友捐赠平均值 | 0% | 0% | 3% |
毕业债务比例借款 | 0% | 0% | 2% |
高中班级排名 | 0% | 0% | 2% |
总计 | 100% | 100% | 100% |
US News的大学排名被广泛认为是衡量美国高等教育机构质量的关键指标。在过去的40年中,这些排名已经发生了很大的变化(当然也有排名方法的变化),反映了大学在教学、研究和其他方面的表现。
我很好奇这些年大学排行有哪些变化,比如具体哪些大学排名增长较大。这里采用US NEWS 1984-2023 的数据,学校均为美国大学,数据来源参考[1]。
让我们一起来看一看吧!
import pandas as pd
# Load the "Compiled 1984-2023 Selective" sheet from the provided Excel file
data = pd.read_excel("data/US-News-Rankings-Universities.xlsx", sheet_name="Compiled 1984-2023 Selective")
# Display the first few rows of the data for a quick overview
data.head()
数据探索
首先,我们选择了几所知名的大学,包括普林斯顿大学、哈佛大学、斯坦福大学、麻省理工学院和耶鲁大学,查看了它们在这段时间内的排名变化。
import matplotlib.pyplot as plt
# Select a few well-known universities for illustration
selected_universities = ["Princeton University", "Harvard University", "Stanford University",
"Massachusetts Institute of Technology", "Yale University"]
# Plot the ranking changes over the years for the selected universities
plt.figure(figsize=(15, 10))
for uni in selected_universities:
plt.plot(data.columns[3:], data[data["University Name"] == uni].iloc[0, 3:], label=uni, marker='o')
plt.gca().invert_yaxis() # Lower rank is better, so invert the y-axis
plt.title("US News Ranking Changes (1984-2023) for Selected Universities")
plt.xlabel("Year")
plt.ylabel("Rank")
plt.legend()
plt.grid(True, which='both', linestyle='--', linewidth=0.5)
plt.show()
如图1所示,这些学校的排名在大部分年份中都非常稳定。
图1:选定大学的排名变化
排名的波动性
通过计算每所大学排名的标准差,我们识别了排名波动最大的大学。
平均数
# Calculate the standard deviation for the rankings of each university and sort them
data["Rank Fluctuation"] = data_filled.std(axis=1, skipna=True)
top_fluctuating_universities = data.sort_values(by="Rank Fluctuation", ascending=False)[["University Name", "Rank Fluctuation"]].head(10)
top_fluctuating_universities
大学名称 | 平均排名 | 标准差 |
---|---|---|
普林斯顿大学 (Princeton University) | 1.71 | 1.09 |
哈佛大学 (Harvard University) | 1.71 | 0.73 |
耶鲁大学 (Yale University) | 2.74 | 0.83 |
斯坦福大学 (Stanford University) | 4.55 | 1.48 |
麻省理工学院 (MIT) | 5.27 | 1.92 |
杜克大学 (Duke University) | 7.43 | 2.08 |
加利福尼亚理工学院 (Caltech) | 7.49 | 3.72 |
哥伦比亚大学 (Columbia University) | 8.22 | 3.93 |
芝加哥大学 (University of Chicago) | 8.47 | 3.45 |
宾夕法尼亚大学 (University of Pennsylvania) | 8.64 | 4.24 |
标准差:
# Calculate the average ranking and standard deviation for each university over the years
data["Average Rank"] = data.iloc[:, 3:].mean(axis=1, skipna=True)
data["Rank Standard Deviation"] = data.iloc[:, 3:-1].std(axis=1, skipna=True)
# Display the universities sorted by their average rank
sorted_data = data.sort_values(by="Average Rank")[["University Name", "Average Rank", "Rank Standard Deviation"]].head(10)
sorted_data
东北大学、亚拉巴马大学和佛罗里达州立大学是波动性最大的三所大学。
表1展示了波动性最大的10所大学的详细数据。
表1:波动性最大的10所大学
长期进步与下滑的大学
基于线性回归的斜率,我们识别了在过去40年中持续进步和持续下滑的大学。线性回归模型可以表示为:
其中:
是因变量 (在本例中是大学的排名) 。 是自变量(在本例中是年份)。 是截距。 是斜率,代表了 每增加一个单位, 预期将增加或减少的数量。 是误差项,代表了由于未被模型考虑的其他因素而产生的随机误差。
通过线性回归,我们可以得到一个直线的方程,描述了因变量随自变量的变化趋势。在本例 中,我们关心的是斜率 ,因为它描述了大学排名随时间的变化趋势。
如果 是正值,那么大学的排名随时间上升。 如果 是负值,那么大学的排名随时间下降。 的绝对值越大,变化趋势越明显。
from sklearn.linear_model import LinearRegression
import numpy as np
# Prepare years as independent variable
years = np.array(data.columns[3:-2]).astype(int).reshape(-1, 1)
# Fill NaN values using forward and backward fill
data_filled = data.iloc[:, 3:-2].fillna(method='ffill', axis=1).fillna(method='bfill', axis=1)
# Redo the linear regression analysis with the filled data
regression_results_filled = {}
for uni in selected_universities:
rankings = data_filled[data["University Name"] == uni].values.reshape(-1, 1)
model = LinearRegression().fit(years, rankings)
slope = model.coef_[0][0]
intercept = model.intercept_[0]
regression_results_filled[uni] = (slope, intercept)
# Calculate the standard deviation for the rankings of each university and sort them
data["Rank Fluctuation"] = data_filled.std(axis=1, skipna=True)
top_fluctuating_universities = data.sort_values(by="Rank Fluctuation", ascending=False)[["University Name", "Rank Fluctuation"]].head(10)
top_fluctuating_universities
([('University of Missouri', 0.8524757816187546),
('University of Alabama', 0.9351779011485468),
('Iowa State University', 1.019925378166371),
('University of Nebraska-Lincoln', 1.0590568879099147),
('University of Kansas', 1.1373648603088264)],
[('Northeastern University', -1.7372614686116297),
('Florida State University', -1.2982850464138815),
('Texas Christian University', -0.7805174080151044),
('University of Buffalo', -0.7525791733159516),
('University of Southern California', -0.7515227798880674)])
堪萨斯大学、内布拉斯加-林肯大学和艾奥瓦州立大学是进步最快的三所大学。而东北大学、佛罗里达州立大学和德克萨斯基督教大学是下滑最快的三所大学。
各州大学的表现
我们还分析了不同州的大学在排名中的表现。
# Calculate the linear regression slope for each university's ranking over the years
slopes = {}
for index, row in data_filled.iterrows():
rankings = row.values.reshape(-1, 1)
model = LinearRegression().fit(years, rankings)
slope = model.coef_[0][0]
slopes[data.iloc[index, 0]] = slope
# Sort universities based on their slopes
sorted_slopes = sorted(slopes.items(), key=lambda x: x[1])
# Top 5 universities with the most improvement (largest positive slope)
most_improved = sorted_slopes[-5:]
# Top 5 universities with the most decline (largest negative slope)
most_declined = sorted_slopes[:5]
most_improved, most_declined
基于各州大学的平均排名和排名的波动性(即标准差),以下是表现最好的10个州(排名较低意味着表现较好):
罗德岛州 (RI):平均排名13.65 密苏里州 (MO):平均排名15.97 乔治亚州 (GA):平均排名37.52,排名的标准差为18.08 路易斯安那州 (LA):平均排名44.14 北卡罗来纳州 (NC):平均排名47.39,排名的标准差为37.84 印第安纳州 (IN):平均排名51.82,排名的标准差为30.16 马萨诸塞州 (MA):平均排名51.90,排名的标准差为38.93 威斯康辛州 (WI):平均排名59.88,排名的标准差为31.75 新罕布什尔州 (NH):平均排名59.97,排名的标准差为71.23 田纳西州 (TN):平均排名61.36,排名的标准差为61.15
罗德岛州、密苏里州和乔治亚州是平均排名最高的三个州。
好啦,这就是所有分析了。
在对US News 大学排行榜中1984-2023年的大学排名变化进行深入研究后,我们得出了一些有趣的发现。在此期间,一些学校的排名持续上升,而其他学校的排名波动较大。
不过大学排行榜只是一个参考,它不能完全代表一个学校的所有优点和劣势。选择大学不应仅基于排名,而应考虑多种因素,如课程设置、学术资源、校园文化、地理位置和费用等。每个学生的需求和偏好都是独特的,因此最重要的是找到最适合个人的学校。
建议学生和家长在做决策时,广泛地收集信息、访问学校、与现有的学生和教师交流,以确保做出明智的选择。
拜拜。
参考资料
[1] Andrew G. Reiter, “U.S. News & World Report Historical Liberal Arts College and University Rankings,” available at: http://andyreiter.com/datasets/