Python3.5 Pandas模块之Series用法实例分析


Posted in Python onApril 23, 2019

本文实例讲述了Python3.5 Pandas模块之Series用法。分享给大家供大家参考,具体如下:

1、Pandas模块引入与基本数据结构

Python3.5 Pandas模块之Series用法实例分析

Python3.5 Pandas模块之Series用法实例分析

2、Series的创建

Python3.5 Pandas模块之Series用法实例分析

Python3.5 Pandas模块之Series用法实例分析

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:ZhengzhengLiu

#模块引入
import numpy as np
import pandas as pd
from pandas import Series,DataFrame

#1.Series通过numpy一维数组创建
print("=========Series通过numpy一维数组创建==========")
arr = np.array([1,2,3,4,5])
s1 = pd.Series(arr)
print(s1)
print(s1.index)
print(s1.values)

#2.Series直接通过一维数组创建
print("=========Series直接通过一维数组创建==========")
s2 = pd.Series([10.5,20,38,40])
print(s2)
#修改索引值
s2.index = ['a','b','c','d']
print(s2)

#Series通过一维数组创建,可以在创建的同时自定义索引值,
# 也可以之后通过赋值的形式去修改
print("=========Series创建的同时自定义索引值和数据类型==========")
s3 = pd.Series(data=[89,78,90,87],dtype=np.float64,
        index=['语文','数学','英语','科学'])
print(s3)

#3.Series通过字典创建,字典的键对应索引,值对应数据
print("=========Series通过字典创建==========")
dict = {'a':1,'b':2,"c":3,"d":4}
s4 = pd.Series(dict)
print(s4)

运行结果:

=========Series通过numpy一维数组创建==========
0    1
1    2
2    3
3    4
4    5
dtype: int32
RangeIndex(start=0, stop=5, step=1)
[1 2 3 4 5]
=========Series直接通过一维数组创建==========
0    10.5
1    20.0
2    38.0
3    40.0
dtype: float64
a    10.5
b    20.0
c    38.0
d    40.0
dtype: float64
=========Series创建的同时自定义索引值和数据类型==========
语文    89.0
数学    78.0
英语    90.0
科学    87.0
dtype: float64
=========Series通过字典创建==========
a    1
b    2
c    3
d    4
dtype: int64

3、Series值的获取

Python3.5 Pandas模块之Series用法实例分析

#模块引入
import numpy as np
import pandas as pd
from pandas import Series,DataFrame

#4.Series值的获取
print("=========Series值的获取==========")
s2 = pd.Series([10.5,20,38,40])
#修改索引值
s2.index = ['a','b','c','d']
print(s2)
print(s2[0])    #方括号+下标值的形式获取Series值
print(s2["a"])   #方括号+索引的形式获取Series值

运行结果:

=========Series值的获取==========
a    10.5
b    20.0
c    38.0
d    40.0
dtype: float64
10.5
10.5

4、Series运算

Python3.5 Pandas模块之Series用法实例分析

Python3.5 Pandas模块之Series用法实例分析

#模块引入
import numpy as np
import pandas as pd
from pandas import Series,DataFrame

#5.Series值的运算
#Series中元素级别的运算结果,包含索引值并且键值关系保持不变
print("=========Series值的运算==========")
s6 = pd.Series({'a':1,'b':2,"c":3,"d":4})
print(s6)
print("=========打印Series大于2的值==========")
print(s6[s6>2])
print("=========打印Series的值除以2==========")
print(s6/2)

#numpy中的通用函数在Series中也支持
s7= pd.Series([1,2,-3,-4])
print(np.exp(s7))

运行结果:

=========Series值的运算==========
a    1
b    2
c    3
d    4
dtype: int64
=========打印Series大于2的值==========
c    3
d    4
dtype: int64
=========打印Series的值除以2==========
a    0.5
b    1.0
c    1.5
d    2.0
dtype: float64
0    2.718282
1    7.389056
2    0.049787
3    0.018316
dtype: float64

5、Series缺失值检验

Python3.5 Pandas模块之Series用法实例分析

Python3.5 Pandas模块之Series用法实例分析

#模块引入
import numpy as np
import pandas as pd
from pandas import Series,DataFrame

#6.Series缺失值检验
scores = Series({"a":88,"b":79,"c":98,"d":100})
print(scores)

new = ["a","b","e","c","d"]
scores = Series(scores,index=new)
print(scores)

print("======过滤出为缺失值的项=======")
print(scores.isnull())       #NAN值返回True
#print(pd.isnull(scores))      #与上面一句等价

print("======过滤出为非缺失值的项=======")
print(pd.notnull(scores))      #非NAN值返回True

运行结果:

a     88
b     79
c     98
d    100
dtype: int64
a     88.0
b     79.0
e      NaN
c     98.0
d    100.0
dtype: float64
======过滤出为缺失值的项=======
a    False
b    False
e     True
c    False
d    False
dtype: bool
======过滤出为非缺失值的项=======
a     True
b     True
e    False
c     True
d     True
dtype: bool

6、Series自动对齐

Python3.5 Pandas模块之Series用法实例分析

#模块引入
import numpy as np
import pandas as pd
from pandas import Series,DataFrame

#7.Series自动对齐

s8 = Series([12,28,46],index=["p1","p2","p3"])
s9 = Series([2,4,6,8],index=["p2","p3","p4","p5"])
print("=======s8=======")
print(s8)
print("=======s9=======")
print(s9)
print("=======s8+s9=======")
print(s8+s9)

运行结果:

=======s8=======
p1    12
p2    28
p3    46
dtype: int64
=======s9=======
p2    2
p3    4
p4    6
p5    8
dtype: int64
=======s8+s9=======
p1     NaN
p2    30.0
p3    50.0
p4     NaN
p5     NaN
dtype: float64

7、Series及其索引的name属性

Python3.5 Pandas模块之Series用法实例分析

#模块引入
import numpy as np
import pandas as pd
from pandas import Series,DataFrame

#8.Series及其name属性
s10 = Series({"jack":18,"amy":20,"lili":23,"susan":15})
print(s10)

print("=======设置name属性后=======")
s10.name = "年龄"    #数据名称标签
s10.index.name = "姓名"    #索引名称标签

print(s10)

运行结果:

amy      20
jack     18
lili     23
susan    15
dtype: int64
=======设置name属性后=======
姓名
amy      20
jack     18
lili     23
susan    15
Name: 年龄, dtype: int64

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python3.3实现乘法表示例
Feb 07 Python
python操作摄像头截图实现远程监控的例子
Mar 25 Python
Pycharm学习教程(5) Python快捷键相关设置
May 03 Python
Scrapy的简单使用教程
Oct 24 Python
python语言中with as的用法使用详解
Feb 23 Python
Python 中导入csv数据的三种方法
Nov 01 Python
python可视化实现代码
Jan 15 Python
Python函数返回不定数量的值方法
Jan 22 Python
Python如何获得百度统计API的数据并发送邮件示例代码
Jan 27 Python
python SocketServer源码深入解读
Sep 17 Python
python保存log日志,实现用log日志画图
Dec 24 Python
Django多数据库配置及逆向生成model教程
Mar 28 Python
使用Python控制摄像头拍照并发邮件
Apr 23 #Python
详解Python静态网页爬取获取高清壁纸
Apr 23 #Python
Python matplotlib画图与中文设置操作实例分析
Apr 23 #Python
Python实现的删除重复文件或图片功能示例【去重】
Apr 23 #Python
详解Python 函数如何重载?
Apr 23 #Python
解决Django生产环境无法加载静态文件问题的解决
Apr 23 #Python
Python 存储字符串时节省空间的方法
Apr 23 #Python
You might like
PHP 学习路线与时间表
2010/02/21 PHP
PHP逐行输出(ob_flush与flush的组合)
2012/02/04 PHP
php获取域名的google收录示例
2014/03/24 PHP
php在linux下检测mysql同步状态的方法
2015/01/15 PHP
JQuery 选项卡效果(JS与HTML的分离)
2010/04/01 Javascript
js TextArea的选中区域处理
2010/12/28 Javascript
Jquery之Ajax运用 学习运用篇
2011/09/26 Javascript
javascript生成json数据简单示例分享
2014/02/14 Javascript
js通过八个点 拖动改变div大小的实现方法
2014/03/05 Javascript
Javascript前端UI框架Kit使用指南之kitjs的对话框组件
2014/11/28 Javascript
jquery日历插件datepicker用法分析
2016/01/22 Javascript
深入理解jQuery()方法的构建原理
2016/12/05 Javascript
常用的几个JQuery代码片段
2017/03/13 Javascript
nodejs模块nodemailer基本使用-邮件发送示例(支持附件)
2017/03/28 NodeJs
基于vue2.0实现的级联选择器
2017/06/09 Javascript
深入理解Vue.js源码之事件机制
2017/09/27 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
uni-app微信小程序登录并使用vuex存储登录状态的思路详解
2019/11/04 Javascript
[06:33]3.19 DOTA2发布会 海涛、冷冷、2009见证希望
2014/03/21 DOTA
Python yield使用方法示例
2013/12/04 Python
仅用50行代码实现一个Python编写的计算器的教程
2015/04/17 Python
Windows和Linux下Python输出彩色文字的方法教程
2017/05/02 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
Python简单生成随机姓名的方法示例
2017/12/27 Python
详解python做UI界面的方法
2019/02/27 Python
python tools实现视频的每一帧提取并保存
2020/03/20 Python
十行代码使用Python写一个USB病毒
2019/06/21 Python
python命令行参数用法实例分析
2019/06/25 Python
关于解决iframe标签嵌套问题的解决方法
2020/03/04 HTML / CSS
美国最灵活的移动提供商:Tello
2017/07/18 全球购物
美国马匹用品和骑马配件购物网站:Horse.com
2018/01/08 全球购物
上课说话检讨书大全
2014/01/22 职场文书
函授自我鉴定范文
2014/02/06 职场文书
大学生社会实践活动总结
2014/07/03 职场文书
优秀员工演讲稿
2019/06/21 职场文书
MySQL中EXPLAIN语句及用法
2022/05/20 MySQL