Pandas的数据结构

1、Series

Series是一种类似于一维数组的对象,由下面两个部分组成:

  • index:相关的数据索引标签
  • values:一组数据(ndarray类型)

series的创建方法:

1.直接传入一个列表

s1 = Series([1,2,3,4])
s1
0    1
1 2
2 3
3 4
dtype: int64
查看series对象的属性:
s1.index # 索引
s1.values
还可以带上index参数,表示里这个参数作为索引
s2 = Series(data=[1,2,3,4],index=list('abcd'))

2.用字典的方式去创建

Series({'a':1,'b':2,'c':3})
a 1
b 2
c 3
dtype: int64

series的索引和切片

显式索引:

  • 使用index中的元素作为索引值
  • 使用.loc['索引名'](推荐)
s1 = Series(data=[150,150,150,300],index=list('语数外综'))
s1
语 150
数 150
外 150
综 300
dtype: int64
s1.loc[['语','外']]  # 同一个维度 取多个值 要用中括号括起来
s1.loc[['语','语']]
s1.loc[['综','语']]
s1.loc['语':'外'] # 文字索引 切片 开始位置和结束位置都能取到

s2 = Series(data=[1,2,3,4,5,6],index=list('abcdef'))
  s2

s2.loc['b':'e':2]  # 也可以跳着取 2代表的是step
# s2.loc['e':'b':-1] # 注意 如果想倒着取 前面切片的属性 也得是倒着的

隐式索引:

  • 使用整数作为索引值
  • 使用.iloc[ 索引号 ](推荐)
s2.iloc[0]
# 整数数组形式的索引 通过iloc同样可以使用
s2.iloc[[2,2,2,2,2]]
s2.iloc[[3,2,1,0]] s2.loc['a':'c']
s2.iloc[0:3] # 显示索引 切片的时候是 包括最后一个的 隐式索引 不包括最后一个

series的常用属性和方法

可以把Series看成一个定长的有序字典

可以通过shape,size,index,values等得到series的属性

s2.head()  # 如果不传参数 默认展示头5个内容
s2.tail() # 查看最后的几个

Series中如果值是None,会被转成NaN。并且计算时会被当成0(ndarray不会)
可以使用pd.isnull(),pd.notnull(),或自带isnull(),notnull() 函数检测值为None或NaN的数据

另外 series对象有一个name属性可以用来区分不同的series

series的运算

(1) 适用于numpy的数组运算也适用于Series

s2
a 1
b 2
c 3
d 4
e 5
f 6
dtype: int64 #s2+2
s2*2
a 2
b 4
c 6
d 8
e 10
f 12
dtype: int64

(2) Series之间的运算

  • 在运算中自动对齐不同索引的数据
  • 如果索引不对应,则补NaN(值和NaN相加的结果还是NaN,如果想要让NaN的值当作0处理,可以用s1.add(s2,fill_value=0)来处理)
 

pandas的数据结构之series的更多相关文章

  1. pandas 的数据结构(Series, DataFrame)

    Pandas 讲解 Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的. Pandas 纳入了大量库和一些标 ...

  2. Python数据分析之pandas基本数据结构:Series、DataFrame

    1引言 本文总结Pandas中两种常用的数据类型: (1)Series是一种一维的带标签数组对象. (2)DataFrame,二维,Series容器 2 Series数组 2.1 Series数组构成 ...

  3. Pandas的使用(3)---Pandas的数据结构

    Pandas的使用(3) Pandas的数据结构 1.Series 2.DataFrame

  4. Pandas之数据结构

    pandas入门 由于最近公司要求做数据分析,pandas每天必用,只能先跳过numpy的学习,先学习大Pandas库 Pandas是基于Numpy构建的,让以Numpy为中心的应用变得更加简单 pa ...

  5. pandas 的数据结构Series与DataFrame

    pandas中有两个主要的数据结构:Series和DataFrame. [Series] Series是一个一维的类似的数组对象,它包含一个数组数据(任何numpy数据类型)和一个与数组关联的索引. ...

  6. pandas中数据结构-Series

    pandas中数据结构-Series pandas简介 Pandas是一个开源的,BSD许可的Python库,为Python编程语言提供了高性能,易于使用的数据结构和数据分析工具.Python与Pan ...

  7. pandas的数据结构介绍(一)—— Series

    pandas两个主要数据结构之一--Series 类似于一维数组,由一组数据和与其相关的一组索引组成 obj = Series([4, 7, -5, 3], index=['d', 'b', 'a', ...

  8. Pandas 的数据结构

    Pandas的数据结构 导入pandas: 三剑客 from pandas import Series,DataFrame import pandas as pd import numpy as np ...

  9. pandas的数据结构

    要使用pandas,需要熟悉它的两个主要的数据结构,Series和DataFrame. Series series是一种类似于以为数组的对象,它由一组数据(各种numpy的数据类型)以及一组与之相关的 ...

随机推荐

  1. 解决IE浏览器兼容问题的一行代码

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. SpringBoot-@RequestParam

    Request参数 在访问各种各样网站时,经常会发现网站的URL的最后一部分形如:?xxxx=yyyy&zzzz=wwww.这就是HTTP协议中的Request参数,它有什么用呢?先来看一个例 ...

  3. RVIZ实现模拟控制小车

    RVIZ是一个强大的可视化工具,可以看到机器人的传感器和内部状态. 1.安装rbx1功能包Rbx1是国外一本关于ros的书中的配套源码,包含了机器人的基本仿真.导航.路径规划.图像处理.语音识别等等. ...

  4. python框架之Django(9)-CSRF

    准备 现有如下模板和视图: <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  5. idea 无法找到或加载主类

  6. Spring框架第二天

    ## Spring框架第二天 ## ---------- **课程回顾:Spring框架第一天** 1. 概述 * IOC和AOP 2. 框架的IOC的入门 * 创建applicationContex ...

  7. tiny6410的启动参数

    bootargs=root=/dev/mtdblock2 rootfstype=yaffs2 init=/linuxrc console=ttySAC0,115200 bootcmd=nand led ...

  8. EPOCH batchsize

    只有在数据很庞大的时候(在机器学习中,几乎任何时候都是),我们才需要使用 epochs,batch size,迭代这些术语,在这种情况下,一次性将数据输入计算机是不可能的.因此,为了解决这个问题,我们 ...

  9. Shell 解释器初识

    1.脚本文件要以.sh结尾,第一行要跟#!/bin/bash解释器. 2.运行shell脚本. (1)添加权限:可以加x执行权限,./123.sh (2)命令执行:bash 123.sh,sh 123 ...

  10. Java爬取B站弹幕 —— Python云图Wordcloud生成弹幕词云

    一 . Java爬取B站弹幕 弹幕的存储位置 如何通过B站视频AV号找到弹幕对应的xml文件号 首先爬取视频网页,将对应视频网页源码获得 就可以找到该视频的av号aid=8678034 还有弹幕序号, ...