美文网首页
pandas里的数据结构Series

pandas里的数据结构Series

作者: 崔吉龙 | 来源:发表于2019-03-08 11:11 被阅读0次

问题描述

因为pandas是基于python的,所有在做机器学习项目时,最基本的数据结构时list,虽然list比较简单易用,但是用来做数据科学还是需要很多改进的地方。在机器学习的几个库中,numpy有最简单高效的narray,pandas有更加高效的Series。今天我们就来学习一下Series。

Series定义

Series是带有特殊索引的数组。回忆一下,我们知道数组ndarray是带有索引index(0~n-1)的数据列表。而Series是在ndarray基础上,可以自定义索引。

通过list创建Series

from pandas import Series, DataFrame
import port pandas as pd

# 通过list创建Series
ser1 = Series([1,2,3,4])
print(ser1)

输出结果为

0    1
1    2
2    3
3    4
dtype: int64

对比一下numpy的ndarray

import numpy as np
array1 = np.array([1,2,3,4])
print(array1)

输出结果为

[1 2 3 4]

当我们不特别指定索引index时,Series和ndarray功能基本相同,都是以数字0~n-1作为索引的。下面我们测试一下使用特定索引值。

ser2 = pd.Series([1,2,3,4], index=['a','b','c','d'])

输出结果为

a    1
b    2
c    3
d    4
dtype: int64

可以看出索引值已经变成了字母'a,b,c,d'

通过Dictionary创建Series

通过diction创建索引时,dictionary的atrribute自动成为索引值。

sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}
ser3 = Series(sdata)
print(ser3)

输出:

Ohio      35000
Oregon    16000
Texas     71000
Utah       5000
dtype: int64

我们也可以在用dictionary创建Series时,指定索引值

index = ['California', 'Ohio', 'Oregon', 'Texas']

输出为:

California        NaN
Ohio          35000.0
Oregon        16000.0
Texas         71000.0
dtype: float64

可以看出索引Series是以索引排序进行数据展示的,如果这个索引对应的值不存在,那么就要显示成NaN,代表这个索引的值为空。我们可以使用pandas特有的函数isnull来检测哪些值为空。

pd.isnull(ser4)

输出为:

California     True
Ohio          False
Oregon        False
Texas         False
dtype: bool

Series的使用

首先我们可以通过自定义的index来访问Series元素

ser1[0]
Out[195]: 1

ser2['a']
Out[196]: 1

ser2[['a','b']]
Out[197]: 
a    1
b    2
dtype: int64

ser2.values
Out[198]: array([1, 2, 3, 4])

ser2.index
Out[199]: Index(['a', 'b', 'c', 'd'], dtype='object')

其次我们还可以像ndarray那样参与矩阵运算

In [200]: ser2[ser2 > 2]
Out[200]: 
c    3
d    4
dtype: int64

In [201]: ser2 * 2
Out[201]: 
a    2
b    4
c    6
d    8
dtype: int64

In [202]: np.exp(ser2)
Out[202]: 
a     2.718282
b     7.389056
c    20.085537
d    54.598150
dtype: float64

In [203]: 

相关文章

  • 刺猬教你量化投资(五):Pandas入门

    Pandas基础概念 数据结构 Pandas中的数据结构有四种,分别是Series、time series、dat...

  • 2021-12-31 Python-23

    pandas pandas数据结构 pandas 有 2 个常用的数据结构:Series 和 Dataframe一...

  • Pandas

    Pandas的数据结构 pandas 中使用Series和DataFrame对象存储数据 Series 1.什么是...

  • 使用python进行数据分析<五>(pandas入门

    pandas基于Numpy构建 pandas 的数据结构介绍 Series DataFrame

  • 杨景院Pandas学习笔记(持续更新中)

    Pandas数据结构Series:基本概念及创建 Series 数据结构 Series 是带有标签的一维数组,可以...

  • pandas

    pandas 入门 pandas 的数据结构介绍 pandas 有两个重要的数据结构:Series和DataFra...

  • Pandas-2019-03-14

    Pandas Pandas 介绍 Pandas主要处理的数据结构 ·系列(Series)·数据帧(DataFram...

  • pandas学习-1

    Pandas数据结构Series:基本概念及创建 "一维数组"Serise ` Series 数据结构 Serie...

  • pandas入门

    引入pandas和常用的数据结构Series,DataFrame 一、pandas的数据结构的介绍 1.Serie...

  • 第二章:Pandas入门-1

    第二章:pandas入门 2.1 pandas数据结构介绍 2.1.1 Series Series是一种一维的数据...

网友评论

      本文标题:pandas里的数据结构Series

      本文链接:https://www.haomeiwen.com/subject/vfeseqtx.html