欢迎访问宙启技术站
智能推送

pandas.DataFrame中的数据逻辑运算和条件查询有哪些方法

发布时间:2023-12-17 14:56:31

在pandas.DataFrame中,可以使用多种方法对数据进行逻辑运算和条件查询。下面是一些常用的方法和使用示例:

1. 逻辑运算符:

- 与运算:使用&符号

- 或运算:使用|符号

- 非运算:使用~符号

import pandas as pd

# 创建DataFrame
data = {'A': [True, False, True, False],
        'B': [True, True, False, False]}
df = pd.DataFrame(data)

# 使用逻辑运算符进行逻辑运算
result = df[(df['A'] & df['B']) | ~df['A']]
print(result)

2. 比较运算符:

- 相等:使用==符号

- 不等:使用!=符号

- 大于:使用>符号

- 大于等于:使用>=符号

- 小于:使用<符号

- 小于等于:使用<=符号

# 创建DataFrame
data = {'A': [1, 2, 3, 4],
        'B': [3, 2, 1, 4]}
df = pd.DataFrame(data)

# 使用比较运算符进行条件查询
result = df[df['A'] > df['B']]
print(result)

3. isin()方法:

- 判断数据是否在给定的范围内

# 创建DataFrame
data = {'A': ['apple', 'banana', 'orange', 'apple'],
        'B': ['banana', 'cherry', 'orange', 'grape']}
df = pd.DataFrame(data)

# 使用isin()方法进行条件查询
result = df[df['A'].isin(['apple', 'orange'])]
print(result)

4. between()方法:

- 判断数据是否在给定的范围内

# 创建DataFrame
data = {'A': [1, 2, 3, 4, 5],
        'B': ['a', 'b', 'c', 'd', 'e']}
df = pd.DataFrame(data)

# 使用between()方法进行条件查询
result = df[df['A'].between(2, 4)]
print(result)

5. query()方法:

- 使用字符串表达式进行条件查询

# 创建DataFrame
data = {'A': [1, 2, 3, 4, 5],
        'B': ['a', 'b', 'c', 'd', 'e']}
df = pd.DataFrame(data)

# 使用query()方法进行条件查询
result = df.query('A > 2')
print(result)

6. isnull()和notnull()方法:

- 判断数据是否为空

# 创建DataFrame
data = {'A': [1, None, 3, None],
        'B': ['a', 'b', None, 'd']}
df = pd.DataFrame(data)

# 使用isnull()方法进行条件查询
result = df[df['A'].isnull()]
print(result)

# 使用notnull()方法进行条件查询
result = df[df['B'].notnull()]
print(result)

这些方法和示例展示了基本的数据逻辑运算和条件查询的方法,可以根据具体需求使用这些方法进行数据处理和分析。