下面是一个示例代码,用于比较一个数组中的值与数据帧中的某一列的值,如果相等,则获取该行的其他列的值:
import pandas as pd
# 创建一个示例数据帧
df = pd.DataFrame({'A': ['foo', 'bar', 'baz', 'qux'],
'B': [1, 2, 3, 4],
'C': [10, 20, 30, 40]})
# 创建一个示例数组
arr = ['baz', 'qux']
# 比较数组的值与数据帧中的列
mask = df['A'].isin(arr)
# 获取满足条件的行的其他列的值
result = df.loc[mask, ['B', 'C']]
print(result)
输出结果为:
B C
2 3 30
3 4 40
在这个示例中,我们首先创建了一个包含三列的数据帧df。然后,我们创建了一个包含两个元素的数组arr。接下来,我们使用isin()
函数比较数据帧df的列'A'的值是否在数组arr中,返回一个布尔掩码mask。最后,我们使用loc[]
函数根据掩码获取满足条件的行,并选择列'B'和'C'的值。
上一篇:比较数组的列值