📜  Python| Pandas DataFrame.loc[](1)

📅  最后修改于: 2023-12-03 15:19:15.198000             🧑  作者: Mango

Python | Pandas DataFrame.loc[]

概述

DataFrame.loc[] 是 Pandas 库中用于定位和访问 DataFrame 数据的方法。它允许程序员通过传递行和列的标签来选择和操作特定的数据。

语法
DataFrame.loc[row_indexer, column_indexer]
  • row_indexer:表示要选择的行的标签或布尔数组/索引。
  • column_indexer:表示要选择的列的标签或布尔数组/索引。
用法
选择行和列

首先,让我们创建一个示例 DataFrame:

import pandas as pd

data = {'Name': ['John', 'Sam', 'Anna', 'Julia'],
        'Age': [25, 30, 35, 40],
        'Country': ['USA', 'Canada', 'Germany', 'France']}

df = pd.DataFrame(data)

要使用 DataFrame.loc[] 方法选择特定的行和列,请按照以下方式使用:

# 选择特定的行和列
df.loc[row_indexer, column_indexer]

例如,要选择第一行的所有列,可以使用以下代码:

df.loc[0, :]
选择多个行和列

要选择多个行和列,请使用列表:

# 选择多个行和列
df.loc[[row_indexer_1, row_indexer_2], [column_indexer_1, column_indexer_2]]

例如,要选择前两行和前两列的子集,可以使用以下代码:

df.loc[[0, 1], ['Name', 'Age']]
使用布尔数组选择行

除了使用行和列的标签外,您还可以使用布尔数组选择特定的行。布尔数组必须具有与 DataFrame 相同的长度,其中 True 值表示要选择的行,False 值表示不选择的行。

以下示例使用布尔数组选择年龄大于等于 30 的行:

df.loc[df['Age'] >= 30]
使用条件选择行和列

您还可以使用条件表达式来选择行和列:

# 使用条件选择行和列
df.loc[condition, column_indexer]

例如,要选择年龄大于等于 30 的行的姓名和国家列,可以使用以下代码:

df.loc[df['Age'] >= 30, ['Name', 'Country']]

以上是如何使用 DataFrame.loc[] 方法选择和访问 Pandas DataFrame 中的数据的简单示例。

更多资源