pandas的唯一值、值计数以及成员资格的示例

yipeiwu_com6年前Python基础

1、Series唯一值判断

 s = Series([3,3,1,2,4,3,4,6,5,6])
 #判断Series中的值是否重复,False表示重复
 print(s.is_unique)
 #False
 #输出Series中不重复的值,返回值没有排序,返回值的类型为数组
 print(s.unique())
 #[3 1 2 4 6 5]
 print(type(s.unique()))
 #<class 'numpy.ndarray'>
 #统计Series中重复值出现的次数,默认是按出现次数降序排序
 print(s.value_counts())
 '''
 3 3
 6 2
 4 2
 5 1
 2 1
 1 1
 '''
 #按照重复值的大小排序输出频率
 print(s.value_counts(sort=False))
 '''
 1 1
 2 1
 3 3
 4 2
 5 1
 6 2
 '''

2、成员资格判断

a、Series的成员资格

 s = Series([5,5,6,1,1])
 print(s)
 '''
 0 5
 1 5
 2 6
 3 1
 4 1
 '''
 #判断矢量化集合的成员资格,返回一个bool类型的Series
 print(s.isin([5]))
 '''
 0  True
 1  True
 2 False
 3 False
 4 False
 '''
 print(type(s.isin([5])))
 #<class 'pandas.core.series.Series'>
 #通过成员资格方法选取Series中的数据子集
 print(s[s.isin([5])])
 '''
 0 5
 1 5
 '''

b、DataFrame的成员资格

 a = [[3,2,6],[2,1,4],[6,2,5]]
 data = DataFrame(a,index=["a","b","c"],columns=["one","two","three"])
 print(data)
 '''
  one two three
 a 3 2  6
 b 2 1  4
 c 6 2  5
 '''
 #返回一个bool的DataFrame
 print(data.isin([1]))
 '''
   one two three
 a False False False
 b False True False
 c False False False
 '''
 #选取DataFrame中值为1的数,其他的为NaN
 print(data[data.isin([1])])
 '''
  one two three
 a NaN NaN NaN
 b NaN 1.0 NaN
 c NaN NaN NaN
 '''
 #将NaN用0进行填充
 print(data[data.isin([1])].fillna(0))
 '''
  one two three
 a 0.0 0.0 0.0
 b 0.0 1.0 0.0
 c 0.0 0.0 0.0
 '''

以上这篇pandas的唯一值、值计数以及成员资格的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

对python 各种删除文件失败的处理方式分享

调用python提供的各种删除文件的操作均失败 返回值5,拒绝访问,但是多次确认文件没有被打开,文件是从一个zip包中解压出来后,没有任何打开读写等操作 最后调用windows的强制删除...

Python如何实现文本转语音

准备 我测试使用的Python版本为2.7.10,如果你的版本是Python3.5的话,这里就不太适合了。 使用Speech API 原理 我们的想法是借助微软的语音接口,所以我们肯...

python中getattr函数使用方法 getattr实现工厂模式

看了下函数本身的doc复制代码 代码如下:getattr(object, name[, default]) -> value Get a named attribute from...

Python3匿名函数用法示例

本文实例讲述了Python3匿名函数用法。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 # 匿名函数 # 1.不用给函数取名 #...

python 读取鼠标点击坐标的实例

读取鼠标点击坐标,包括点下去和抬起来的坐标,注意不要在命令行点,可能会出问题 import pythoncom, pyHook def onMouseEvent(event):...