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

软工211陈思好 2023-春-学生 2023-06-21 21:50:27

实验一:Series对象的应用

实验要求:

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

代码实现:

  1.  

    
    import pandas as pd
    # 定义一个Series对象
    s = pd.Series([10, 20, 30, 40, 50])
    # 访问Series对象中的数据
    print(s[0]) # 输出第一个元素
    print(s[2:4]) # 输出第3个到第4个元素
     
    # 修改Series对象中的数据
    s[1] = 25
    # 打印Series对象
    print(s)
     
    # 对Series对象进行计算
    print(s.sum()) # 求和
    print(s.mean()) # 求平均值
    

     

结果: 

实验二:DataFrame对象的应用

实验要求:

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

示例代码:

import pandas as pd
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']}
df = pd.DataFrame(data)
print(df['int_col'][0])#数据定位
print(df.loc[1, 'str_col'])
df.loc[2, 'float_col'] = 3.5#数据修改
print("求和为:",end='')
print(df.sum())
print("第一列平均值:",end='')
print(df['int_col'].mean())
print("第二列平均值:",end='')
print(df['float_col'].mean())

结果: 

 

实验三:综合实例

实验要求:

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

示例代码:


 
  1.  
     
    import pandas as pd
    import matplotlib.pyplot as plt
    from pylab import mpl
    # 设置显示中文字体
    mpl.rcParams["font.sans-serif"] = ["SimHei"]
    mpl.rcParams["axes.unicode_minus"] = False
    # 定义一个包含省会城市、人口、GDP、城市面积的DataFrame对象
    data = {'city': ['北京', '上海', '广州', '深圳'], 'population': [2171, 2424, 1500, 1303],
            'gdp': [30320, 32679, 20353, 22458], 'area': [16410, 6340, 7434, 1996]}
    df = pd.DataFrame(data)
    # 计算各种排名
    pop_rank = df['population'].rank(ascending=False)
    gdp_rank = df['gdp'].rank(ascending=False)
    area_rank = df['area'].rank(ascending=False)
    # 将排名添加到DataFrame对象中
    df['pop_rank'] = pop_rank
    df['gdp_rank'] = gdp_rank
    df['area_rank'] = area_rank
    print(df)
    #计算人口密度
    population_density=df['population']/df['area']
    #城市人均GDP
    GDP_per_people=df['gdp']/df['population']
    #数据添加在表格中
    df['population_density']=population_density
    df['GDP_per_people']=GDP_per_people
    print(df)
    # 使用Pandas绘图,可视化实验结果
    df.plot(kind='bar', x='city', y=['population', 'gdp', 'area'], title='China Capital Cities')
    plt.show()

    结果:

 

...全文
203 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
韩雨韩 2023-08-03
  • 打赏
  • 举报
回复

大佬nb

163

社区成员

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

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