Python的pandas库手把手教学之,索引以及切片取数据

Pandas库

什么是pandas?

一个开源的Python类库:用于数据分析、数据处理、数据可视化

  • 高性能
  • 容易使用的数据结构
  • 容易使用的数据分析工具

很方便和其他类库一起使用

  • numpy:用于数学计算
  • scikit-learn:用于机器学习

什么是Series?

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

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

1)series的创建

  1. 由列表或numpy数组创建
# 先导入所需要的pandas库
import pandas as pd

# 创建series的方法1
# 接下来演示如何将列表数据转成series
list1 = [1, 2, 3, 4]
s = pd.Series(list1)
print(s)
print('--------------------------------------------------')
print(f'series的值为:{s.values}')
print('--------------------------------------------------')
print(f'series的索引为:{s.index}')
print('--------------------------------------------------')
print(f'形象化series的索引值:{list(s.index)}')
print('--------------------------------------------------')

在这里插入图片描述

# 修改索引如下
s.index = ['A', 'B', 'C', 'D']
print(s)

在这里插入图片描述

# 也可以这样修改
s.index = list('abcd')
print(s)

在这里插入图片描述

# 获取索引index对应的值value
s.a, s['b']

在这里插入图片描述

# 通过索引修改值
s['d'] = 100
print(s)

在这里插入图片描述

  1. 用字典创建series
# 以字典的方式创建索引
d = {
    'A': 11,
    'B': 12,
    'C': 13,
    'D': 14
}
s = pd.Series(d)
print(s)
s.index = list('abcd')
print(f'修改索引后:\n{s}')

在这里插入图片描述

# 直接手动输入创建series
# name是自己定义的数组名称
pd.Series([1, 11, 111], index=['1个1', '2个1', '3个1'], name='数字1个数')

在这里插入图片描述

Series的索引

可以使用中括号取单个索引(此时返回的是元素类型),或者中括号里一个列表取多个索引(此时返回的任然是一个Series类型)。分为显示索引和隐私索引:

  1. 显示索引
    • 使用index中的元素作为索引
    • 使用.loc[] (推荐)
# 创建一组数据用来演示
s = pd.Series({1: 150, 'Numpy': 100, 'Pandas': 130})
s

在这里插入图片描述

# 显示索引:使用索引名
print(f'显示索引方式1:{s['Pandas']}')
print(f'显示索引方式2:{s.Pandas}')
print(f'显示索引一次取出多个值:\n{s[['Pandas', 'Numpy']]}')

# 使用loc[]
s.loc['Numpy']

在这里插入图片描述

  1. 隐式索引
    • 使用整数作为索引值
    • 使用.iloc[] (推荐)
# 隐式索引:使用数字下标
s = pd.Series({'Python': 150, 'Numpy': 100, 'Pandas': 130})
# s[0]
# s[[0, 2]]

# # 使用iloc[]
# s.iloc[0]
s.iloc[[0, 2]]

在这里插入图片描述

series切片

# 创建Series数组演示切片
s = pd.Series({
    '语文': 100,
    '数学': 150,
    '英语': 120,
    'python': 130,
    'Pandas': 140,
    'NumPy': 150
})
s

在这里插入图片描述

# 切片
# Series是一维数组
# 隐式切片
s[1 : 4]
s.iloc[1 : 4]

# 显式切片
s['数学' : 'python']
s.loc['数学' : 'python']

在这里插入图片描述

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值