资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

关于python函数缺失的信息

python数据分析模块:numpy、pandas全解

一维数组情况:

在古田等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站设计、网站制作 网站设计制作按需定制开发,公司网站建设,企业网站建设,成都品牌网站建设,全网整合营销推广,成都外贸网站建设公司,古田网站建设费用合理。

二维数组情况:

3参数情况:

2参数情况:

1参数情况:

一维情况:

二维情况:

一维情况:

二维情况:

一维情况:

二维情况:第三个参数指定维度

只查看行数、或者列数

逗号隔开两个索引

某些行

某些列

可以看出append()函数在二维数组中添加元素,结果转为了一维数组。

那怎么保持二维数组呢?可以设置axis参数按行或者按列添加

可以看出先把二维数组降成了一维数组,再在索引为1的位置添加元素。

那么怎么保持在二维添加元素呢? 同样设置axis参数

也分按行和按列删除

标记缺失值: isnan()函数

补充缺失值:

同样axis参数可以指定拼接按行还是按列

2. hstack()函数:以水平堆叠的方式拼接数组

3. vstack()函数:以垂直堆叠的方式拼接数组

第二个参数还可以是数组,指定拆分的位置

hsplit()函数:横向拆成几个数组

vsplit()函数:纵向拆成几个数组

数组与数组之间的运算

数组与数值的运算

可以指定整个数组求和,还是按行或者按列

axis=0:每一列的元素求和

axis=1:每一行的元素求和

axis=0:每一列求均值

axis=1:每一行求均值

axis=0:每一列求最大值

axis=1:每一行求最大值

pandas有两个重要的数据结构对象:Series和DataFrame。

Series是创建一个一维数组对象,会自动生成行标签。

会自动生成行列标签

也可以用字典形式生成数据

在用字典生成数据的基础上,同时指定行标签

例如对下表的数据进行读取

4月是第四个表,我们应把sheet_name参数指定为3;因为索引是从0开始的。

可以看出read_excel()函数自动创建了一个DataFrame对象,同时自动把第一行数据当做列标签。

可以看出不给出header参数时,该参数默认为0。

header=1时结果如下:

header=None时结果如下:

index_col=0时,第0列为列标签

index_col=0时

usecols=[2]:指定第二列

指定多列

数据如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j1SHxY8y-1637655972909)(C:Users14051AppDataRoamingTypora ypora-user-imagesimage-20211114192949607.png)]

nrows=3时

head()函数中参数为空默认前5行

指定head(3)时如下

numpy模块也是shape

查看特定列的书库类型

特定列数据类型转换

先查看一下所有数据

与单行相比,结果显示的格式不一样了

iloc()挑选:

或者给出区间

挑选数据要么标签,要么索引挑选

或者

或者写成区间

标签挑选

或者索引挑选

先查看一下数据

或者用字典一对一修改

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-a6QKIoie-1637655972912)(C:Users14051AppDataRoamingTypora ypora-user-imagesimage-20211123110431201.png)]

isin()函数查看表中是否有该值

查看特定列是否有该值

可以看出上述代码并没有替换,那怎么替换呢?

末尾插入一列

指定插入到哪列

axis参数可以指定删除行还是删除列

指定标签删除

指定索引删除

方法三

指定行标签删除

指定索引删除

方法三:

先查看所有数据

info()函数查看数据类型,还可以查看是否有缺失值

isnull()函数查看是否有缺失值

在numpy模块中用isnan()函数

删除有缺失值的行

删除整行都为缺失值的行: 需要指定how参数

不同列的缺失值设置不同的填充值

默认保留第一个重复值所在的行,删除其他重复值所在的行

保留第一个重复值所在的行

保留最后一个重复值所在的行

是重复的就删除

降序如下

参数指定first时,表示在数据有重复值时,越先出现的数据排名越靠前

获取产品为单肩包的行数据

获取数量60的行数据

获取产品为单肩包 且 数量60 的行数据

获取产品为单肩包 或 数量60 的行数据

stack()函数转换成树形结构

how参数指定外连接

on参数指定按哪一列合并

concat()函数采用 全连接 的方式,没有的数设置为缺失值

重置行标签

效果与concat()一样

末尾添加行元素

指定列求和

指定列求均值

指定列求最值

获取单列的

corr()函数获取相关系数

获取指定列与其他列的相关系数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-46g9qgQw-1637655972913)(C:Users14051AppDataRoamingTypora ypora-user-imagesimage-20211123135643804.png)]

groupby()函数返回的是一个DataFrameBy对象,该对象包含分组后的数据,但是不能直观地显示出来。

分组后获取指定列的汇总情况

获取多列的汇总情况

获取多列的情况

ta = pd.read_excel(‘相关性分析.xlsx’)

print(data)

corr()函数获取相关系数

获取指定列与其他列的相关系数

[外链图片转存中…(img-46g9qgQw-1637655972913)]

groupby()函数返回的是一个DataFrameBy对象,该对象包含分组后的数据,但是不能直观地显示出来。

分组后获取指定列的汇总情况

获取多列的汇总情况

获取多列的情况

python数据分析需要数据清理吗

1、对数据进行排序df.sort_values()

#读取数据

titanic_survival=pd.read_csv(r"C:Userspythonwandata_minepython_pandas itanic_train.csv")

#用sort_values()函数对指定列排序,默认升序排序,inplace=True表示在原来的df上排序titanic_survival.sort_values(("Age"),inplace=Tru

2、缺失值判断及统计pandas.isnull()、pandas.isnull

空值统计方法一:df.isnull().sum():

#当不指定具体列时,统计整个df的缺失值个数

titanic_survival['Age'].isnull().sum()

通过len()函数统计缺失值

3、缺失值处理

处理缺失值可以分为两类:删除缺失值和缺失值插补。而缺失值插补又分为以下几种:

均值/中位数/众数插补

使用固定值(将缺失值的属性用一个常量代替)

最近邻插补(在记录中找到与缺失值样本最接近的样本的该属性插补)

回归方法(对带有缺失值的变量,根据已有数据和与其有关的其他变量建立拟合模型来预测缺失值)

插值法(利用已知点建立合适的插值函数f(x),未知值由对应点xi求出来近似代替)

下面,我们主要讨论删除缺失值,学习一些pandas缺失值删除的操作。

1)df.dropna(),舍弃含有任意缺失值的行

#等价于titanic_survival.dropna(axis=0) axis=0表示删除行,axis=1表示删除列

dropall=titanic_survival.dropna()

删除含任意空值的行

2)df.dropna()函数删除某个列中含有空值的行

现在这个数据中age、cabin、embarked都有缺失值,如果我们直接使用df.dropna()会删除掉这三列中都有空值的所有行,但是我们希望只删除age列中有空值的数据,那该如何处理呢?

直接使用df.dropna(subset=['column_list'])

drop_age_null=titanic_survival.dropna(subset=["Age"])

删除指定列中含有缺失值的行

pandas自定义函数

Python复制到pta上的代码编译错误

+PTA网站验证码即可。

编译错误的解决方案还有就是可以检查缩进是否按照Python的语法进行了,如果报错行紧邻着函数,检查函数是否缺失了语句。

Python本该存在于函数库的语句调用显示不存在

使用dir(turtle)先查看一下有哪些函数可用,也可以直接输入turtle.c+tab键查看可用的相似指令。如果找不到,建议去看官问,有些函数随版本更新会被废弃或合并。


当前文章:关于python函数缺失的信息
标题网址:http://cdkjz.cn/article/hhcdpi.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220