按交易所与行业划分的公司价值
通过在 .groupby() 中传入列名列表,以及/或者直接对一个或多个数值列应用统计方法(如 .mean()),您可以生成更细粒度的数据汇总。
本练习中,您将计算各行业的市值中位数,并按照公司所上市的交易所进行区分。您还将使用 .unstack() 将交易所标签从行透视到列。在开始练习前,建议先在控制台检查一下 listings!
已导入 pandas 为 pd、matplotlib.pyplot 为 plt,工作区中提供了 listings DataFrame,其中包含参考列 'Exchange',以及新的列 market_cap_m(以百万美元计的市值)。
本练习是课程的一部分
在 Python 中导入与管理金融数据
练习说明
- 同时按
'Sector'与'Exchange'对数据分组,并将结果赋给by_sector_exchange。 - 计算
by_sector_exchange的市值中位数,赋给mcap_by_sector_exchange。 - 使用
.head()显示结果的前 5 行。 - 对
mcap_by_sector_exchange调用.unstack(),将Exchange标签移到列上,并赋给mcap_unstacked。 - 将结果绘制为条形图,标题设为
'Median Market Capitalization by Exchange',ylabel设为'USD mn'。 - 显示图形结果。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Group listings by Sector and Exchange
by_sector_exchange = ____.____(['Sector', 'Exchange'])
# Calculate the median market cap
mcap_by_sector_exchange = by_sector_exchange.____.____()
# Display the head of the result
print(mcap_by_sector_exchange.____())
# Unstack mcap_by_sector_exchange
mcap_unstacked = ____.____()
# Plot as a bar chart
mcap_unstacked.plot(____=____, title='Median Market Capitalization by Exchange')
# Set the x label
plt.____('USD mn')
# Show the plot
plt.show()