在 Pandas 中根据数值从多列中的某一列进行查询
Preet Sanghavi
2022年5月16日
Pandas
Pandas DataFrame

本教程将学习如何在 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 中的查找值。
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
作者: Preet Sanghavi