关键词

对pandas里的loc并列条件索引的实例讲解

接下来我将为您详细讲解“对pandas里的loc并列条件索引的实例讲解”的完整攻略。

1. loc索引简介

locPandas DataFrame一种基于标签的索引方式,表示通过标签选取数据,其格式为df.loc[row_indexer,column_indexer]

其中,row_indexer为行索引,可省略。column_indexer为列索引,也可省略。如果两者都省略,则表示选取整个DataFrame。

2. loc并列条件索引实例

假设现在有一个DataFrame,包含3列数据:nameagegender,其中age列为整型,gender列为字符串类型。

2.1 示例1:同时满足多个条件的索引

我们可以使用&符号将多个条件连接起来,同时满足多个条件的索引语法格式为:

df.loc[(condition1) & (condition2) & ... & (conditionN), column_indexer]

例如,我们要选取nameTomage18的行数据,代码如下:

import pandas as pd

data = {'name': ['Tom', 'Jack', 'Mary', 'Lucy', 'Lily'],
        'age': [18, 20, 22, 18, 20],
        'gender': ['male', 'male', 'female', 'female', 'female']}
df = pd.DataFrame(data)

# 选取name为Tom,age为18的行数据
result = df.loc[(df['name'] == 'Tom') & (df['age'] == 18), :]
print(result)

执行结果为:

  name  age gender
0  Tom   18   male

2.2 示例2:满足任意一个条件的索引

我们可以使用|符号将多个条件连接起来,满足任意一个条件的索引语法格式为:

df.loc[(condition1) | (condition2) | ... | (conditionN), column_indexer]

例如,我们要选取age1820的行数据,代码如下:

import pandas as pd

data = {'name': ['Tom', 'Jack', 'Mary', 'Lucy', 'Lily'],
        'age': [18, 20, 22, 18, 20],
        'gender': ['male', 'male', 'female', 'female', 'female']}
df = pd.DataFrame(data)

# 选取age为18或20的行数据
result = df.loc[(df['age'] == 18) | (df['age'] == 20), :]
print(result)

执行结果为:

   name  age gender
0   Tom   18   male
1  Jack   20   male
3  Lucy   18 female
4  Lily   20 female

3. 总结

以上就是对Pandas loc并列条件索引的实例讲解的详细攻略,希望可以帮助到您。其中,我们介绍了同时满足多个条件和满足任意一个条件的索引方式,您可以根据实际需求进行灵活应用。如果还有疑问,欢迎继续讨论。

本文链接:http://task.lmcjl.com/news/17161.html

展开阅读全文