2023(春)Python程序设计作业5:Pandas基础技能及综合应用

软工211陈英杰 2023-春-学生 2023-06-18 18:35:28

作业要求

  1.    [基础要求]  基于Jupyter Notebook 完成以下实验一、实验二、实验三;
  2.    [重点要求]  修改以下示例代码,以测试不同知识点。在博客上写出你:
  •  修改的代码、
  •  修改的愿意(意图)
  •  代码运行的结果
  •  你的结论

实验一:Series对象的应用

实验要求:

  • 定义一个Series对象,包含5个整数数据;
  • 访问、修改Series对象中的数据;
  • 打印Series对象;
  • 对Series对象进行计算,如求和、求平均值等。

示例代码:


 
  1. import pandas as pd

  2.  
  3. # 定义一个Series对象

  4.  
  5. s = pd.Series([10, 20, 30, 40, 50])

  6.  
  7. # 访问Series对象中的数据

  8.  
  9. print(s[0]) # 输出第一个元素

  10.  
  11. print(s[2:4]) # 输出第3个到第4个元素

  12.  
  13.  
  14. # 修改Series对象中的数据

  15.  
  16. s[1] = 25

  17.  
  18.  
  19. # 打印Series对象

  20.  
  21. print(s)

  22.  
  23.  
  24. # 对Series对象进行计算

  25.  
  26. print(s.sum()) # 求和

  27.  
  28. print(s.mean()) # 求平均值

实验二:DataFrame对象的应用

实验要求:

  • 定义一个DataFrame对象,包含3个列,每列分别为整数、浮点数和字符串类型;
  • 访问、修改DataFrame对象中的数据;
  • 对DataFrame对象进行计算,如求和、求平均值等。

示例代码:


 
  1. import pandas as pd

  2.  
  3.  
  4. # 定义一个DataFrame对象

  5.  
  6. data = {'int_col': [1, 2, 3, 4, 5], 'float_col': [1.2, 2.3, 3.4, 4.5, 5.6], 'str_col': ['a', 'b', 'c', 'd', 'e']}

  7.  
  8. df = pd.DataFrame(data)

  9.  
  10.  
  11. # 访问DataFrame对象中的数据

  12.  
  13. print(df['int_col'][0]) # 输出第一行第一列的数据

  14.  
  15. print(df.loc[1, 'str_col']) # 输出第二行第三列的数据

  16.  
  17.  
  18. # 修改DataFrame对象中的数据

  19.  
  20. df.loc[2, 'float_col'] = 3.5

  21.  
  22.  
  23. # 对DataFrame对象进行计算

  24.  
  25. print(df.sum()) # 求和

  26.  
  27. print(df.mean()) # 求平均值

 

实验三:综合实例

实验要求:

  • 定义一个包含省会城市、人口、GDP、城市面积的DataFrame对象;
  • 计算各种排名,如人口最多的城市、GDP最高的城市等;
  • 使用Pandas绘图,可视化上述实验结果。

示例代码:


 
  1. import pandas as pd

  2.  
  3. import matplotlib.pyplot as plt

  4.  
  5.  
  6. # 定义一个包含省会城市、人口、GDP、城市面积的DataFrame对象

  7.  
  8. data = {'city': ['北京', '上海', '广州', '深圳'], 'population': [2171, 2424, 1500, 1303],

  9.  
  10. 'gdp': [30320, 32679, 20353, 22458], 'area': [16410, 6340, 7434, 1996]}

  11.  
  12. df = pd.DataFrame(data)

  13.  
  14.  
  15. # 计算各种排名

  16.  
  17. pop_rank = df['population'].rank(ascending=False)

  18.  
  19. gdp_rank = df['gdp'].rank(ascending=False)

  20.  
  21. area_rank = df['area'].rank(ascending=False)

  22.  
  23.  
  24. # 将排名添加到DataFrame对象中

  25.  
  26. df['pop_rank'] = pop_rank

  27.  
  28. df['gdp_rank'] = gdp_rank

  29.  
  30. df['area_rank'] = area_rank

  31.  
  32.  
  33. # 使用Pandas绘图,可视化实验结果

  34.  
  35. df.plot(kind='bar', x='city', y=['population', 'gdp', 'area'], title='China Capital Cities')

  36.  
  37. plt.show()

...全文
23 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

163

社区成员

发帖
与我相关
我的任务
社区描述
软件工程老师
python 高校 江苏省·南通市
社区管理员
  • juking@ntu
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧