在 Pandas 中根据数值从多列中的某一列进行查询
Preet Sanghavi
2022年5月16日
本教程将学习如何在 Pandas 中执行查找操作。
根据 Pandas 中的值从多个列之一中查找的步骤
以下是根据 Pandas DataFrame 中的值从多个列之一进行查找的步骤。
导入 Pandas
我们现在将导入我们需要开始的基本库。
import pandas as pd
创建 Pandas DataFrame
我们将创建一个示例 DataFrame,用于执行查找过程。
data = {'Year': ['2000', '2001', '2002', '2003'], 'data': ['a', 'b', 'c', 'd'],'a':[1,2,3,4],'b':[5,6,7,8],'c':[9,10,11,12],'d':[13,14,15,16]}
df = pd.DataFrame(data)
在上面的代码中,我们创建了一个名为 data
的列表字典。然后,我们将此字典传递给 pd.DataFrame()
函数以创建 Pandas DataFrame。
现在让我们看看我们的 DataFrame 的外观。
print(df)
输出:
Year data a b c d
0 2000 a 1 5 9 13
1 2001 b 2 6 10 14
2 2002 c 3 7 11 15
3 2003 d 4 8 12 16
使用 lookup()
函数根据值从多个列之一中查找
我们现在将根据列 data
值从多个列之一执行查找。我们将使用 Pandas 中的 lookup()
函数来执行所需的操作。
df['value'] = df.lookup(df.index, df['data'])
我们在上面的代码中添加了一个名为 value
的新列,其中包含 lookup()
函数添加的查找值。在查找函数中,我们传递要在以下列中查找其索引值的列名。
我们现在使用带有查找值的新添加列 value
打印更新的 DataFrame。
print(df)
输出:
Year data a b c d value
0 2000 a 1 5 9 13 1
1 2001 b 2 6 10 14 6
2 2002 c 3 7 11 15 11
3 2003 d 4 8 12 16 16
我们已经成功地在上面的输出中添加了带有查找值的新列。因此,我们可以通过上述方法成功找到 Pandas DataFrame 中的查找值。
Author: Preet Sanghavi