python大作业代码及文档,python大作业代码100行

本文详细介绍了如何在Python大作业中使用pandas库的Series和DataFrame对象,包括数据访问、修改、筛选、去重和基本统计计算。还展示了如何在JupyterNotebook中实现数据可视化,包括绘制满天星、城市数据排名和饼图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大家好,本文将围绕python大作业代码及文档展开说明,python大作业代码100行是一个很多人都想弄明白的事情,想搞清楚python期末大作业题目需要先了解以下几个事情。

Source code download: 本文相关源码

大家好,小编为大家解答python大作业设计一个纸牌类游戏的问题。很多人还不知道python大作业代码及文档,现在让我们一起来看看吧!

作业要求
  1.    [基础要求]  基于Jupyter Notebook 完成以下实验一、实验二、实验三;
  2.    [重点要求]  修改以下示例代码,以测试不同知识点怎么用python画圆弧。在博客上写出你:
  •  修改的代码、
  •  修改的愿意(意图)
  •  代码运行的结果
  •  你的结论
实验一:Series对象的应用
实验要求:
  • 定义一个Series对象,包含5个整数数据;
  • 访问、修改Series对象中的数据;
  • 打印Series对象;
  • 对Series对象进行计算,如求和、求平均值等用python绘制满天星代码
示例代码:
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())  # 求平均值

修改后的代码:

import pandas as pd

# 定义一个Series对象
s = pd.Series([10, 20, 30, 40, 50])

# 访问Series对象中的数据
print(s[0])  # 输出第一个元素
print(s[2:4])  # 输出第3个到第4个元素

#访问Series对象中大于20的数据
print(s[s>20])

# 对Series对象进行去重操作
s1=pd.Series([1,1,2,3,3,5,5,9,4])
news1=s1.unique()
print(news1)

# 修改Series对象中的数据
s[1] = 25

# 打印Series对象
print(s)

# 对Series对象进行计算
print(s.sum())  # 求和
print(s.mean())  # 求平均值

修改意图:测试Series对象的筛选数据与去重功能

运行结果:

结论:

要在Series中筛选数据,可以使用布尔索引,直接在Series对象后加上筛选条件即可;

Series对象可以使用unique()方法进行去重操作。

实验二:DataFrame对象的应用
实验要求:
  • 定义一个DataFrame对象,包含3个列,每列分别为整数、浮点数和字符串类型;
  • 访问、修改DataFrame对象中的数据;
  • 对DataFrame对象进行计算,如求和、求平均值等。
示例代码:
import pandas as pd
 
# 定义一个DataFrame对象
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)
 
# 访问DataFrame对象中的数据
print(df['int_col'][0])  # 输出第一行第一列的数据
print(df.loc[1, 'str_col'])  # 输出第二行第三列的数据
 
# 修改DataFrame对象中的数据
df.loc[2, 'float_col'] = 3.5
 
# 对DataFrame对象进行计算
print(df.sum())  # 求和
print(df.mean())  # 求平均值

修改后的代码:

import pandas as pd

# 定义一个DataFrame对象
data = {'int_col': [1, 2, 3, 4, 5,6,7,8], 'float_col': [1.2, 2.3, 3.4, 4.5, 5.6,6.7,7.8,8.9], 'str_col': ['a', 'b', 'c', 'd', 'e','f','g','h']}
df = pd.DataFrame(data)

# 访问DataFrame对象中的数据
print(df['int_col'][0])  # 输出第一行第一列的数据
print(df.loc[1, 'str_col'])  # 输出第二行第三列的数据

# 访问DataFrame对象前n行数据与后n行数据
print(df.head())
print(df.tail(2))

# 筛选数据
print(df[df['str_col'] > 'c'])


# 修改DataFrame对象中的数据
df.loc[2, 'float_col'] = 3.5

# 对DataFrame对象进行计算
print(df.sum())  # 求和
print(df.mean())  # 求平均值

修改意图:测试DataFrame对象对象访问前n行和后n行数据的功能,以及筛选数据的功能

运行结果:

结论:

DataFrame对象可以通过df.head(n)、df.tail(n)命令查看前后n行数据,默认为5行;

DataFrame对象可以使用以下命令实现根据某一列数据进行条件过滤,返回DataFrame类型。

df[df[column] > value]

实验三:综合实例
实验要求:
  • 定义一个包含省会城市、人口、GDP、城市面积的DataFrame对象;
  • 计算各种排名,如人口最多的城市、GDP最高的城市等;
  • 使用Pandas绘图,可视化上述实验结果。
示例代码:
import pandas as pd
import matplotlib.pyplot as plt
 
# 定义一个包含省会城市、人口、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
 
# 使用Pandas绘图,可视化实验结果
df.plot(kind='bar', x='city', y=['population', 'gdp', 'area'], title='China Capital Cities')
plt.show()

修改后的代码:

import pandas as pd
import matplotlib.pyplot as plt

# 定义一个包含省会城市、人口、GDP、城市面积的DataFrame对象
data = {'city': ['bj', 'sh', 'gz', 'sz'], '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

# 使用Pandas绘图,可视化实验结果
df.plot(kind='bar', x='city', y=['population', 'gdp', 'area'], title='China Capital Cities')
plt.show()

# 绘制城市面积的饼图
fig, ax = plt.subplots()
ax.pie(df['area'], labels=df['city'], autopct='%1.1f%%')
ax.axis('equal')
ax.set_title('Area distribution')
plt.show()

修改意图:

使城市名称能显示出来,示例代码未考虑到中文显示问题,如果系统默认编码不是utf-8会导致出现中文乱码问题,于是我将城市名称换位了拼音首字母;

使用pandas绘制城市面积数据的饼图。

运行结果:

结论:

可使用下图命令绘制饼图,其中,kind="pie" 表示绘制饼图,subplots=True 表示将不同数据分别绘制在一个子图中,figsize 表示设置图形大小。最后通过 plt.show() 展示图像。

df.plot(kind='pie', subplots=True, figsize=(8, 8))
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值