pandas入门(1)——Series数据结构

本文是pandas入门系列的第一部分,主要介绍Series数据结构。Series是一种类似于一维数组的对象,由数据和相关索引组成。可以通过字典创建Series,并能处理缺失数据。此外,Series的name属性在数据分析中扮演重要角色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pandas入门(1)——Series数据结构

pandas是数据分析的首选库,基于NumPy数组构建。它含有使数据清洗和分析工作变得更快更简单的数据结构和操作工具。pandas经常和其它工具一同使用,如数值计算工具NumPy和SciPy,分析库statsmodels和scikit-learn,和数据可视化库matplotlib。

pandas是专门为处理表格和混杂数据设计的,而NumPy更适合处理统一的数值数组数据

引入pandas, Series, DataFrame:

import pandas as pd
from pandas import Series, Dataframe

Series数据结构

Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成,如

obj=pd.Series([4,7,-5,3])
obj

备注:Series的字符串表现形式为:索引在左边,值在右边。由于我们没有为数据指定索引,于是会自动创建一个0到N-1(N为数据的长度)的整数型索引。

创建的Series带有一个可以对各个数据点进行标记的索引

obj.index = ['Bob', 'Steve', 'Jeff', 'Ryan']
obj
obj1=pd.Series([4,7,-5,3],['b','d','a','c'])
obj1

通过索引的方式选取Series中的单个或一组值:

obj1[['c', 'a', 'd']]

备注:[‘c’, ‘a’, ‘d’]是索引列表,即使它包含的是字符串而不是整数。使用NumPy函数或类似NumPy的运算(如根据布尔型数组进行过滤、标量乘法、应用数学函数等)都会保留索引值的链接,如

obj1[obj1 > 0]
'b' in obj1
'e' in obj1

通过字典创建Series

sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}
obj2 = pd.Series(sdata)
obj2

如果只传入一个字典,则结果Series中的索引就是原字典的键(有序排列)。你可以传入排好序的字典的键以改变顺序:

states = ['California', 'Ohio', 'Oregon', 'Texas']
obj3 = pd.Series(sdata, index=states)
obj3

缺失数据的表示

  1. pandas的isnull和notnull函数可用于检测缺失数据,如

    pd.isnull(obj3)
    pd.notnull(obj3)
    
  2. Series用insull检测:

    obj3.insull()
    

name属性

Series对象本身及其索引都有一个name属性,该属性跟pandas其他的关键功能关系非常密切,如

obj3.name='population'
obj3.index.name='State'
obj3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值