import pandas as pd 报错_Pandas数据之Series基础使用

本文介绍了Pandas库中的Series数据结构,包括如何创建Series、设置自定义index、处理NAN值,以及常用操作如获取下标、value值、数据排序、与字典的转换等。通过实例展示了Series的基本使用方法。
摘要由CSDN通过智能技术生成
640

点击上方「蓝字」关注我们

640

1,Pandas安装

pandas是python的一个第三方库,那么我们下载可以直接终端输入:

pip insatll pandas

2,Series

2.1,Series数据创建

首先导入pandas库,一般都会用到numpy库,所以我们先导入备用

import numpy as npimport pandas as pd

series属于一维数组,那么就类似于python中的list(列表),只不过这个数据是"竖起来"的list,那我们开始利用pandas建立Series!

import numpy as npimport pandas as pdlist1 = pd.Series(['张三','李四','王五','孙六'])print(list1)

可以看到pd.Series后面放的是一个list数据,运行后我们可以看看得到的结果有啥表现:

c5cc42c82dedb6f6c15c51063e95710e.png

以上可以看到我们的数据竖了起来,那么旁边这列下标是哪里来的呢?这是pandas自带的index数据,如果我们不特殊标明的话,则是从0开始递增的,接下来我们自定义一下index:

list1 = pd.Series(['张三','李四','王五','孙六'],index=['A','B','C','D'])

可以看下我们得到的结果:

ccf4674803120619983aad62c6b061ff.png

如果我们下标与数据的个数对应不上的话,那么代码运行将会报错,所以没必要的话,我们没必要特地标明下标。如果我们存在空的数据应当如何写入呢?NAN在pandas里面表示的就是空值,我们可以借助numpy库:

list1 = pd.Series(['张三','李四',np.nan,'王五','孙六'])

运行可以得到以下结果:

454e44b0170f649b1032d554c2986772.png

2.2,Series常用操作

获取下标--Series.index

list1 = pd.Series(['张三','李四','二狗','王五','孙六'])print(list1.index)>>>RangeIndex(start=0, stop=5, step=1)

可以看到下标从0开始,一个有5个,如果下标是我们定义的则会显示出具体的下标数据。

获取value值:

我们可以通过下标进行数据获取,如果是自定义的下标,那么下标类似于python中字典里的key:

list1 = pd.Series(['张三','李四','二狗','王五','孙六'],['a','b','c','d','e'])print(list1['d'])>>>王五

如果是默认的下标,那么我们需要借助 iloc方法:

list1 = pd.Series(['张三','李四','二狗','王五','孙六'])print(list1.iloc[3])>>>王五

获取数据前几行--head():

print(list1.head(2))

5ced5fd0619e32ff787e97bf400fbffa.png

获取Series详细信息--describe():

print(list1.describe())

747da80094204545bfe820644a390573.png

对数据排序--sort_values():

list1 = pd.Series(['张三','李四','二狗','王五','孙六'])print(list1.sort_values())

999be722b27f758f334cfd883d08fe5a.png

Series与字典dict之间的转换:

我们知道Series是由下标和value组成的,那么数据是不是和python中的字典有点相似呢?能不能将其转换为dict?接下来我们来演示:

Series-->dict(to_dict()):

list1 = pd.Series(['张三','李四','二狗','王五','孙六'])print(list1.to_dict())>>>{0: '张三', 1: '李四', 2: '二狗', 3: '王五', 4: '孙六'}

dict-->Series():

dict1 = {'a':'张三','b':'李四','c':'二狗','d':'王五','e':'孙六'}list1 = pd.Series(dict1)print(list1)

42a99834223d344776293ec2047181c4.png

注意:

之前有说过如果index与value个数对不上的话会报错,但是如果我们是使用dict字典形式传入的话,那么则不会出现这种报错情况,如果下标重复的话,value也会重复,下标不存在的话,则会自动填充value为Nan!

dict1 = {'a':'张三','b':'李四','c':'二狗','d':'王五','e':'孙六'}bt = ['a','b','c','d','e','f','c']list1 = pd.Series(dict1,index=bt)print(list1)

a694b238334cf050cb1c2d7726a17706.png

                                              -END-

今天的内容暂且这么多,下期我们继续!

最后推上一首小编很喜欢的歌,希望大家喜欢!

关注本号,教你更多测试技能

ec277c7a33ebedf883b9c59e2ae9db6b.png

往期推荐

一篇文章了解python常见内置异常报错

python中装饰器是如何实现的,企业中用来做什么呢

如何使用jsonpath与python结合进行接口响应断言

yaml文件解读及接口自动化相结合使用

yaml文件解读及接口自动化相结合使用

Pandas基础介绍及基本数据结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值