1. 导入并查看数据

  1. # csv文件用逗号“,”分隔
  2. import numpy as np
  3. import pandas as pd
  4. import matplotlib.pyplot as plt
  5. data = pd.read_csv('president_heights.csv')
  6. print("查看文件内容:")
  7. print(data.head())
  8. order name height(cm)
  9. 0 1 George Washington 189
  10. 1 2 John Adams 170
  11. 2 3 Thomas Jefferson 189
  12. 3 4 James Madison 163
  13. 4 5 James Monroe 183

2. 身高数据计算

  1. heights = np.array(data["height(cm)"])
  2. # 打印平均身高
  3. print("打印平均身高:", round(np.average(heights), 2))
  4. # 打印身高的标准差
  5. print("打印身高的标准差:", round(np.std(heights), 2))
  6. # 打印最低身高
  7. print("打印最低身高:", np.min(heights))
  8. # 打印最高身高
  9. print("打印最高身高:", np.max(heights))
  10. # 打印身高中位数
  11. print("打印身高中位数:", np.median(heights))
  12. 打印平均身高: 179.74
  13. 打印身高的标准差: 6.93
  14. 打印最低身高: 163
  15. 打印最高身高: 193
  16. 打印身高中位数: 182.0
  1. heights = np.array(data["height(cm)"])
  2. print("身高数据:")
  3. print("平均身高:%.2f cm" %(heights.mean()))# 打印平均身高
  4. print("身高标准方差:%.2f cm" %(heights.var()))# 打印身高的标准差
  5. print("最低身高:%d cm" %(heights.min()))# 打印最低身高
  6. print("最高身高:%d cm" %(heights.max()))# 打印最高身高
  7. print("身高中位数:%d cm" %(np.median(heights)))# 打印身高中位数
  8. 身高数据:
  9. 平均身高:179.74 cm
  10. 身高标准方差:48.05 cm
  11. 最低身高:163 cm
  12. 最高身高:193 cm
  13. 身高中位数:182 cm

3. 柱状图绘制

  1. plt.figure()
  2. plt.hist(heights)
  3. plt.rcParams['font.sans-serif'] = ['SimHei'] # 显示中文标签
  4. plt.rcParams['axes.unicode_minus'] = False # 这两行需要手动设置
  5. plt.title("美国总统身高直方图")
  6. plt.xlabel("身高")
  7. plt.ylabel("分布")
  8. plt.show()

image.png