开始使用免费开始使用

按行业分组的市值中位数

"汇总数据"(Aggregate data)是由多次测量合并而成的数据。正如您在视频中所学,.groupby() 函数有助于按特定类别汇总数据。

您之前已经看到,市值数据中存在较大的离群值。为了更加稳健地概括各行业公司市值,您将计算按行业分组的市值中位数。pandas 已以 pd 导入,matplotlib.pyplot 已以 plt 导入,纽约证交所(NYSE)的上市公司数据已作为 DataFrame nyse 提供在您的工作区中。

本练习是课程的一部分

在 Python 中导入与管理金融数据

查看课程

练习说明

  • 使用 .info() 查看 nyse
  • 结合广播与 .div(),创建新列 market_cap_m,其包含以百万美元计的市值。
  • 使用 .drop() 删除 'Market Capitalization' 列。
  • nyse 应用 .groupby() 方法,以 'Sector' 作为分组列。
  • 计算 market_cap_m 列的中位数,保存为 median_mcap_by_sector
  • 将结果绘制为水平条形图,标题为 'NYSE - Median Market Capitalization'。使用 plt.xlabel() 并传入 'USD mn' 添加坐标轴标签。
  • 显示结果。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Inspect NYSE data
nyse.____()

# Create market_cap_m
nyse['market_cap_m'] = ____[____].div(1e6)

# Drop market cap column
nyse = ____.____('Market Capitalization', axis=1)

# Group nyse by sector
mcap_by_sector = ____.____(____)

# Calculate median
median_mcap_by_sector = mcap_by_sector.____.____()

# Plot and show as horizontal bar chart
median_mcap_by_sector.plot(____=____, title='NYSE - Median Market Capitalization')

# Add the label
plt.____('USD mn')

# Show the plot
plt.show()
编辑并运行代码