loc 和 iloc基本选取操作

在Python的pandas库中,loc和iloc是两种常用的数据选取方法。loc基于标签来选取数据,允许使用列名和条件表达式;iloc则基于位置选取,用整数索引来操作。本文将深入探讨这两个方法的使用技巧和注意事项,帮助你更高效地操作大型数据集。

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

import pandas as pd

# loc 和 iloc基本选取操作
df = pd.DataFrame([['hu', '男', 23], ['chen', '女', 27], ['li', '男', 33]],
                  index=['1001', '1002', '1003'],
                  columns=['name', 'sex', 'age'])

# loc选取行列和相应的数据类型,loc注意要用于标签索引选取
#  一,选取单行,数据类型是Series
data = df.loc['1001']
# 选取单行单列,其实就是就是选取单元格的值,数据类型是单元格数据本身的数据类型
data = df.loc['1001', 'name']
# 选区单行多列,数据类型是Series
data = df.loc['1001', 'name':'age']
data = df.loc['1001', ['name', 'age']]
print(data)
print(type(data))

# 选取多行,数据类型是DataFrame
data = df.loc['1001':'1002']
data = df.loc[['1001', '1002']]
# 选取多行单列,数据类型是Series
data = df.loc['1001':'1002', 'name']
# 选取多行多列,数据类型是DataFrame
data = df.loc['1001':'1002', 'name':'age']

# 从上述的数据类型来看,当选取为单行或者单列时,pandas都默认为Serial类型

# 二,多种选取单元格的方式
data = df.loc['1001', 'name']
data = df.loc['1001']['name']
data = df.loc[:, 'name']['1001']

# 三,布尔选取,即使选取到只有单行或者单列,数据类型也都是dataframe,估计是pandas无法取预测实际能够选取多少行列
data = df.loc[df['name'] == 'hu']

# iloc选取行列,loc注意要用于下标选取
# iloc相对比较简单,就是下标选取
df = pd.DataFrame([['hu', '男', 23], ['chen', '女', 27], ['li', '男', 33]],
                  index=['1001', '1002', '1003'],
                  columns=['name', 'sex', 'age'])

data = df.iloc[0:1,0:2]
data = df.iloc[[0,2],[0,1]]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值