Pandas数据结构之Series对象

1. 认识Pandas中的数据结构

在这里插入图片描述
上图为通过Pandas读取数据集展示出来的数据,以此为例来讲解Pandas的核心概念,以及这些概念的层级关系:

  • DataFrame
    • Series
      • 索引列
        • 索引名、索引值
        • 索引下标、行号
      • 数据列
        • 列名
        • 列下标
        • 列值,具体的数据
          其中最核心的就是Pandas中的两个数据结构:DataFrameSeries

2. Series对象

  • Series也是Pandas中的最基本的数据结构对象,是DataFrame的列对象或者行对象,Series本身也具有行索引。
  • Series是一种类似于一维数组的对象,由下面两个部分组成:
    • values:一组数据(numpy.ndarray类型)
    • index:相关的数据行索引标签;如果没有为数据指定索引,会自动创建一个0到N-1(N为数据的长度)的整数型索引。

2.1 创建Series对象

2.1.1 语法

  • numpy.array(object, dtype=None, ndmin=0)

    • object:这是必填参数,表示要转换为数组的数据,可以是多种数据类型,如列表(包括嵌套列表)、元组、其他数组等。例如:np.array([1, 2, 3]),这里的[1, 2, 3]就是作为object的列表;或者np.array((4, 5, 6)),这里的(4, 5, 6)是作为object的元组。
    • ndmin:指定创建数组的最小维度。例如,np.array([1, 2, 3], ndmin = 2)会创建一个二维数组,即使输入的数据看起来像是一维的。
  • class pandas.Series(data=None, index=None)

    • data参数

      • 含义:data是Series构造函数中最主要的参数,它用来指定要存储在Series中的数据。
      • 数据类型:data可以是多种数据类型,例如:
        • Python 列表(list)或元组(tuple),如pd.Series([1, 2, 3])或pd.Series((4, 5, 6))。
        • NumPy 数组,例如pd.Series(np.array([7, 8, 9]))。
        • 标量值(单个数值、字符串等),如pd.Series(5, index=[0, 1, 2]),这将创建一个包含相同标量值的Series。
        • 字典(dictionary),字典的键将作为Series的索引(如果未另外指定索引),字典的值作为Series的数据,例如pd.Series({‘a’: 10, ‘b’: 20})。
    • index参数

      • 含义:index参数用于指定Series的索引,它定义了数据的标签。
      • 数据类型:
        • 可以是一个Index对象(这是pandas中专门用于表示索引的数据结构),例如pd.Index([‘x’, ‘y’, ‘z’])可以作为索引传递给Series。
        • 也可以是其他类似序列的数据类型,如列表、元组等,例如pd.Series([100, 200, 300], index=[‘m’, ‘n’, ‘o’])。
        • 索引长度要求:index的长度必须与data的长度相同(当data是列表、数组等有序数据结构时)。如果data是标量,index的长度决定了Series的长度。例如,data为标量值5,index为[0, 1, 2],则会生成一个包含三个元素值都为5的Series。

2.1.2 通过numpy.ndarray数组来创建

2.1.2.1 自动生成索引
import numpy as np
import pandas as pd
# 创建numpy.ndarray对象
n1 = np.array([1,2,3])
print(n1)
print(type(n1))

# 创建Series对象
s1 = pd.Series(data=n1)
print(s1)
print(type(s1))

运行结果:
在这里插入图片描述

  • 上面的结果中,左边显示的0,1是Series的索引,默认为0,1,2,3…,下边的dtype:int64就是该Series对象中值的数据类型。
2.1.2.2 指定索引
import numpy as np
import pandas as pd
# 创建numpy.ndarray对象
n1 = np.array([1,2,3])

# 创建Series对象,同时指定索引
s1 = pd.Series(data=n1,index=['A','B','C'])

print(s1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值