浙教版(2019)信息技术必修1 4.2.2 编程处理数据 课件(38张PPT)

文档属性

名称 浙教版(2019)信息技术必修1 4.2.2 编程处理数据 课件(38张PPT)
格式 pptx
文件大小 1.6MB
资源类型 教案
版本资源 浙教版(2019)
科目 信息技术(信息科技)
更新时间 2021-10-26 11:26:26

图片预览

文档简介

(共38张PPT)
4.2.2编程处理数据
第四章
第四章
目录
相关模块
Pandas模块
Matplotlib模块
实践
Python常用数据处理拓展模块
Numpy模块:是科学运算的基础库,主要提供科学计算中常用的随机数、数组运算等基础模块
Scipy模块:基于numpy构建的一个模块,增强了在高等数学、信号处理、图像处理、统计等方面的能力
Pandas模块:基于numpy实现,主要用于数据的处理与分析,提供了大量处理数据的函数和方法,能方便操作大型数据集
Pandas模块
提供了Series和DataFrame两种数据结构。使用这两种数据结构,可以完成数据的整理、计算、统计、分析以及简单可视化。
import 模块名
调用:模块名.函数名()
from 模块名 import 函数名
调用:函数名()
import 模块名[as 别名]
调用:别名.函数名()
from 模块名 import 函数名[as 别名]
调用:别名()
Pandas模块——DataFrame(数据框)
数据结构 维度 组成部分 属性
Series
一维
由一个数组的数据(values)和一个与数据关联的索引(index)
index、values
自主阅读书本P120,完成表格填空
Pandas模块——Series序列
Series是一种一维的数据结构,由一个数组的数据(values)和一个与数据关联的索引(index),索引值默认是从0起递增的整数。列表,字典等都可以用来创建Series数据结构,与列表不同的是,Series的索引可以指定,类型可以是字符串类型。
课堂练习
下列关于pandas模块的说法不正确的是( )
A.Pandas是基于numpy的一种工具,该工具是为了解决数据分析任务而创建的
B.Pandas提供了大量能使我们快速、便捷地处理数据的函数和方法
C.Pandas提供的Series是一种一维数组的对象,他由包含一个数组的数据组成的
D.Pandas模块导入的方法是import pandas as pd
C
Pandas模块——Series序列
from pandas import Series #导入pandas库中Series模块
pds1 = Series([45, 30, 35, 28])
pds1
0 45
1 30
2 35
3 28
左列:index
右列:values
以列表为数据对象创建
1.创建Series对象
Pandas模块——Series序列
通过字典方式创建
data = {“学生甲”:45,“学生乙”:30,“学生丙”:35,“学生丁":28}
ps3 = Series(data)
ps3
学生甲 45
学生乙 30
学生丙 35
学生丁 28
Pandas模块——Series序列
通过指定索引的方式,以列表为数据对象创建
pds2 = Series([45, 30, 35, 28], index=['学生甲', '学生乙', '学生丙', '学生丁'])
pds2
学生甲 45
学生乙 30
学生丙 35
学生丁 28
索引可以是字符串类型
Pandas模块——Series序列
通过指定索引的方式,通过字典方式创建
data = {"i1":1,"i2":2,"i3":3,"i4":4}
ps3 = Series(data,index=['i2','i1','i3','i4'])
ps3
i2 2
i1 1
i3 3
i4 4
Pandas模块——Series序列
通过指定索引的方式,通过字典方式创建
data = {"i1":1,"i2":2,"i3":3,"i4":4}
ps3 = Series(data,index=[‘i1',’i2','i3',‘i4’,’i5’])
ps3
i1 1
i2 2
i3 3
i4 4
i5 NaN
Pandas模块——Series序列
通过index、values属性访问
import pandas as pd
ps=pd.Series ([45, 30, 35, 28], index=['学生甲', '学生乙', '学生丙', '学生丁'])
print(ps.values)
[45, 30, 35, 28]
2.查看、选取Series对象中的数据
import pandas as pd
ps=pd.Series([45, 30, 35, 28], index=['学生甲', '学生乙', '学生丙', '学生丁'])
print(ps.index)
Index=( ['学生甲', '学生乙', '学生丙', '学生丁'], dtype='object')
索引是字符串类型时:dtype='object'
索引是整型时:dtype=‘int64'
课堂练习
有Python程序段如下:
import pandas as pd
ser = pd.Series([1,3,5,7])
print(ser.index)
该程序段运行后输出结果为( )
A
课堂练习
下列有关Series说法错误的是( )
A.Series中index属性,默认值从0开始
B.Series中必须指定index
C.两个index不同的Series可以相加
D. Series中的index可以是字符串类型
B
Pandas模块——Series序列
索引访问
import pandas as pd
ps=pd.Series([45, 30, 35, 28], index=['学生甲', '学生乙', '学生丙', '学生丁’])
print(ps[['学生甲', '学生乙']])
学生甲 45
学生乙 30
2.查看、选取Series对象中的数据
Pandas模块——Series序列
通过赋值语句修改
import pandas as pd
ps=pd.Series([45, 30, 35, 28], index=['学生甲', '学生乙', '学生丙', '学生丁’])
ps[‘学生甲’]=42
print(ps['学生甲'])
42
3.修改Series对象中的数据
Pandas模块——DataFrame(数据框)
数据结构 维度 组成部分 属性
Series 一维 由一个数组的数据(values)和一个与数据关联的索引(index) index、values
DataFrame
二维
由1个索引列(index)和若干个数据列组成
index、columns、values、T
自主阅读书本P121,完成表格填空
Pandas模块——DataFrame(数据框)
DataFrame是一种类似于关系表的表格型数据结构,DataFrame对象是一个二维表格,由1个索引列(index)和若干个数据列组成。其中,每列中的元素类型必须一致,而不同的列可以拥有不同的元素类型。
Pandas模块——DataFrame(数据框)
columns
columns
Pandas模块——DataFrame(数据框)
import pandas as pd
data = {“name”:[‘学生甲’, ‘学生乙’, ‘学生丙’, ‘学生丁’],“语文”:[100,89,110,105], “数学”:[110,120,125,135],“信息”:[45, 30, 35, 28]}
df = pd.DataFrame(data)
df
index
以相等长度的列表组成的字典形式创建
1.创建DataFrame对象
Pandas模块——DataFrame(数据框)
DataFrame数据有列索引和行索引,行索引类似于关系表中每行的编号(未指定行索引的情况下,会使用0到N-1作为行索引),列索引类似于表格的列名(也称为字段)。
df1 = DataFrame(data, index=['20200817','20200818','20200819','20200819’])
df1
对已经创建好的DataFrame对象指定行索引
Pandas模块——DataFrame(数据框)
Excel文件名&文件内容:
1.创建DataFrame对象
import pandas as pd
df=pd.read_excel(test.xlsx)
print(df)
导入二维数组文件创建DataFrame对象
Python代码:
控制台界面:
import pandas as pd
data = {"name":["王晓明","李静","田海"],"sex":["男","女","男"],"aged":[20,19,21]}
df = pd.DataFrame(data)
df.to_excel(test.xlsx)
print(df)
Python代码:
Excel文件名&文件内容:
Pandas模块——DataFrame(数据框)
通过index、values、columns属性查看
2.查看DataFrame对象
print(df.index)
print(df.values)
print(df.columns)
Pandas模块——DataFrame(数据框)
查看数据列
2.查看DataFrame对象
print(df['name'])
查看数据行
print(df.head(2))
print(df.tail(2))
df
print(df[1:3])
Pandas模块——DataFrame(数据框)
Pandas模块——DataFrame(数据框)
append()
增加行数据可以通过append()函数传入字典数据即可。
append_data = {"name":"学生戊","语文":110,"数学":110,"信息":35}
new_df = df.append(append_data,ignore_index=True)
new_df
3.行、列编辑
使用函数:insert()、drop()、rename()、append()、set_value()
Pandas模块——DataFrame(数据框)
append()
增加新列表可以通过append()函数传入字典数据即可。
df1
df2
result
Result=df1.append(df2,ignore_index=True)
Pandas模块——DataFrame(数据框)
增加列
增加列可以直接通过标签索引方式进行,当新增的列中的数值不一样时,可以传入列表或者数组结构进行赋值。
new_df[“英语"] = [“115",“100",“90",“100"]
new_df
修改前
修改后
Pandas模块——DataFrame(数据框)
删除
使用drop()函数可以删除指定轴上的信息,原来的DataFrame数据不会删除。
new_df.drop(2,axis=0) #删除行索引是2的信息
Pandas模块——DataFrame(数据框)
drop()和append()函数均不改变原有df对象中的数据,而是通过返回另一个DataFrame对象来存放改变后的数据
append_data = {"name":"学生戊","语文":110,"数学":110,"信息":35}
new_df = df.append(append_data)
print(new_df)
print(df)
Pandas模块——DataFrame(数据框)
修改标签
通过rename()函数完成行和列索引标签的修改,index参数指定要修改的行标签,columns参数指定要修改的列标签。
df.rename(columns = {"name":"姓名"})
#以字典形式指定修改信息
Pandas模块——DataFrame(数据框)
groupby()
4. DataFrame对象中对数据进行统计和计算:
使用函数:count()、sum()、mean()、max()、min()、describe()、groupby()
df1.groupby(‘班级’,as_index=False)
Pandas模块——DataFrame(数据框)
groupby()
4. DataFrame对象中对数据进行统计和计算:
使用函数:count()、sum()、mean()、max()、min()、describe()、groupby()
df1.groupby(‘班级’,as_index=False)
df1.groupby(‘班级’,as_index=False).mean()
df1.groupby(‘sex’,as_index=False).aged.mean()
Pandas模块——DataFrame(数据框)
按索引排序sort_index()
4. DataFrame对象中的排序
按值排序sort_ values()
print(df1.sort_values(“信息",ascending=False))
print(df1.sort_index())
ascending=False 降序
ascending=True 升序
默认升序
课堂练习
某DataFrame对象df,其中包含18000数据行个和6个数据列,下列语句中能查看df对象中数据行的是( )
A.df.index
B.df.columns
C.df.head()
D.df.count()
C
课堂练习
判断题
某DataFrame对象df,执行下列程序后,df中的数据将删除列索引为‘名称’数据列( )
import pandas as pd
df.drop(‘名称’,axis=1)
×
谢谢观看
第四章
第四章