数据分析入门——pandas之Series
一、介绍
Pandas是一个开源的,BSD许可的库(基于numpy),为Python编程语言提供高性能,易于使用的数据结构和数据分析工具。
官方中文文档:https://www.pypandas.cn/docs/
本次演示使用数据来自github:https://github.com/jakevdp/PythonDataScienceHandbook/tree/master/notebooks/data
二、快速入门
1.导入

2.重点数据结构
主要是series和dataframe
所以一般情况下我们导入的是数据分析的三剑客:
numpy Series DataFrame:(如果只导入pd,那就正常使用pd.Series即可了)
from pandas import Series,DataFrame
三、Series
Series是Pandas中的一维数据结构,类似于Python中的列表和Numpy中的Ndarray,不同之处在于:Series是一维的,能存储不同类型的数据,有一组索引与元素对应。也就是加了索引的一维数据结构(索引不一定是0 1 2 3的数字)

1.创建
1)通过列表或者numpy数组进行创建,默认索引是0 1 2 3这样的整数索引。示例如上图
想要指定索引,可以设置index参数:(创建的时候指定也是可以的)

特别地,使用ndarray创建的series是引用,对series的改变会影响ndarray
2)由字典创建

Series主要分为index、values两块
2.索引和切片
1).使用index作为索引值(不推荐)

2)使用升级为Series之后的loc()函数(推荐)

3)使用隐式索引(不显式指定索引的内容值,通过类似ndarray的索引风格取数据)

4)切片,可以直接[]或者loc形式

3.Series基本概念
1)常用属性:index、values、shape(一维的,所以只能是一个元素的元组)、size
2)可以通过head()、tail()等查看头部和尾部数据(类似linux的命令),只看前5个或者后5个
3)索引没有对应的值时,值会出现NaN,也就是数据缺失的情况,在np中使用np.nan表示这个空值,python中就是None表示了
4)可以使用 isnull()、notnull()来检测空值:

可以通过notnull()等进行空数据过滤:
s2 = s.notnull()
# 以下取出的便是为True的非空数据
s[s2]
5)每个Series都有一个name属性,可以在DataFrame中进行区分,在df中,也就相当于列名

6)Series运算
可以正常的进行加减运算,其中None值不会参与计算,而ndarray值为None时为报错,为np.nan时计算结果为nan


或者通过s1.add(10,fill_value= 0)等形式来控制NaN的默认值
两个Series之间也可以运算,不对齐的部分(也就是索引不相等的部分),补充NaN

要保留index不对齐的部分,可以使用add()方法:,通过fill_value

数据分析入门——pandas之Series的更多相关文章
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作
一.reindex() 方法:重新索引 针对 Series 重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...
- 数据分析入门——Pandas类库基础知识
使用python进行数据分析时,经常会用Pandas类库处理数据,将数据转换成我们需要的格式.Pandas中的有两个数据结构和处理数据相关,分别是Series和DataFrame. Series Se ...
- 数据分析入门——pandas之DataFrame基本概念
一.介绍 数据帧(DataFrame)是二维数据结构,即数据以行和列的表格方式排列. 可以看作是Series的二维拓展,但是df有行列索引:index.column 推荐参考:https://www. ...
- 数据分析入门——pandas数据处理
1,处理重复数据 使用duplicated检测重复的行,返回一个series,如果不是第一次出现,也就是有重复行的时候,则为True: 对应的,可以使用drop_duplicates来删除重复的行: ...
- 数据分析入门——pandas之DataFrame多层/多级索引与聚合操作
一.行多层索引 1.隐式创建 在构造函数中给index.colunms等多个数组实现(datafarme与series都可以) df的多级索引创建方法类似: 2.显式创建pd.MultiIndex 其 ...
- 数据分析入门——pandas之DataFrame数据丢失
一.数据丢失分类 1)nd中分为两种:None和np.nan(NaN) 其中,None是python中的对象,是一个object:而nan是一个float类型 两种不同的类型,运算速度也是不同的 2) ...
- 数据分析之pandas库--series对象
1.Series属性及方法 Series是Pandas中最基本的对象,Series类似一种一维数组. 1.生成对象.创建索引并赋值. s1=pd.Series() 2.查看索引和值. s1=Serie ...
- 数据分析入门——pandas之数据合并
主要分为:级联:pd.concat.pd.append 合并:pd.merge 一.numpy级联的回顾 详细参考numpy章节 https://www.cnblogs.com/jiangbei/p/ ...
随机推荐
- 解决Antimalware Service Executable CPU占用高的问题
windows8/8.1,WIN10自带的安全软件Windows defender还不错,基本可以不用装其他杀毒软件了. 但是其进程Antimalware Service Executable 出现C ...
- Django --- 查询优化,ajax
目录 ORM查询优化 MTV与MVC模型 choices参数 ajax简介 前后端传输数据编码格式 ajax如何传输json格式数据 ajax如何传入文件数据 序列化 ORM查询优化 在使用数据库数据 ...
- 使用Navicat Premium 12导出SQL语句并在Power Designer 16.5中生成物理模型
内容简介 本文主要介绍使用Navicat Premium 12导出建表SQL(使用MySQL数据库)文件,并在Power Designer 16.5中使用导出的SQL文件来生成物理模型的步骤. 操作步 ...
- UVA 1672不相交的正规表达式
题意 输入两个正规表达式,判断两者是否相交(即存在一个串同时满足两个正规表达式).本题的正规表达式包含如下几种情况: 单个小写字符 $c$ 或:($P | Q$). 如果字符串 $s$ 满足 $P$ ...
- [Kubernetes] Pod Health
Kubernetes relies on Probes to determine the health of a Pod container. A Probe is a diagnostic perf ...
- 【洛谷P4245】 【模板】任意模数NTT
三模数 NTT,感觉不是很难写 $?$ 代码借鉴的 https://www.cnblogs.com/Mychael/p/9297652.html code: #include <bits/std ...
- learning java identityHashCode
var S1 = new String("aaaaa"); System.out.println("SI hasCode: " + S1.hashCode()) ...
- linux 环境变量的设置
方法一: 在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”. 要让刚才的 ...
- 【一起来烧脑】一步React.JS学会体系
[外链图片转存失败(img-cn4fbVDq-1563575047348)(https://upload-images.jianshu.io/upload_images/11158618-8c6f3d ...
- Oracle误删除数据恢复。Oracle删除后恢复数据
发现误删除时需要及时处理,速度要快,姿势要帅.晚了就恢复不了额 1.查询时间 以确保恢复到某个时间点 select SQL_TEXT, LAST_ACTIVE_TIME from v$sqlarea ...