python pandas.DataFrame.loc函数使用详解

  • Post category:Python

请听我讲解“pythonpandas.DataFrame.loc函数使用详解”。

1. 概述

pandas.DataFrame.loc是使用标签(轴标签)、行号和列号访问DataFrame中的元素的函数。loc函数可接收两个参数,第一个参数是行索引,第二个参数是列索引。如果只传入一个参数,那么此参数为行索引,那么在这种情况下,loc视为只返回所有的行数据。

2. 语法

DataFrame.loc[] 

3. 取得一个元素的值

下面是示例代码,我们创建一个DataFrame,然后使用.loc函数获取其中一个元素的值

import pandas as pd

data = {'name':['Tom','Jack','Steve','Ricky'],'age':[28,34,29,42],'city':['Beijing','Shanghai','Guangzhou','Shenzhen'],'gender':['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

print (df.loc[0,'name'])

输出结果

Tom

这里我们获取了第0行第一个数据 ‘Tom’,可以看到.loc函数使用多个参数获取元素值的方式较为简单。

4. 获取整行

下面是可用于获取整行的.loc函数代码

import pandas as pd

data = {'name':['Tom','Jack','Steve','Ricky'],'age':[28,34,29,42],'city':['Beijing','Shanghai','Guangzhou','Shenzhen'],'gender':['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

print (df.loc[0])

输出结果

name          Tom
age            28
city      Beijing
gender          M
Name: 0, dtype: object

这里我们通过.loc函数传入行索引获取了整行数据。

5. 获取多行和多列

通过.loc获取多行和多列的方式也是非常简单的,我们只需要在函数的两个参数里分别传入一个列表即可获取我们需要的数据。

示例代码

import pandas as pd

data = {'name':['Tom','Jack','Steve','Ricky'],'age':[28,34,29,42],'city':['Beijing','Shanghai','Guangzhou','Shenzhen'],'gender':['M', 'M', 'M', 'M']}

df = pd.DataFrame(data)

print (df.loc[[0,2],['name','age']])

输出结果

   name  age
0   Tom   28
2  Steve  29

这里我们传入了两个参数,分别为一个行索引的列表和一个列索引的列表

6. 总结

本文介绍了.loc函数在pandas中的使用方法,包括获取单个元素、获取整行、获取多行和多列等操作。通过这些操作可以方便地对DataFrame中的数据进行访问和处理。