📜  在 df python 中选择特定值和对应值(1)

📅  最后修改于: 2023-12-03 14:50:53.901000             🧑  作者: Mango

在 pandas.DataFrame 中选择特定值和对应值

在 pandas 中,DataFrame 是一个二维数据结构,可以将其看作是一个类似于表格的数据结构,其中每一列都是由一个 Series 组成,而每一行都是由每个 Series 中相应位置的值组成。因此,DataFrame 可以非常方便地存储和处理结构化数据。

在 DataFrame 中,我们通常需要选择特定的值和对应的行或列进行操作,本文将介绍如何在 DataFrame 中进行这些选择。

选择特定列

我们可以通过 DataFrame 的列名来选择特定的列。可以使用中括号并传递列名来选择特定的列。例如:

import pandas as pd

data = {'name': ['John', 'Mike', 'Tom'],
        'age': [20, 25, 30],
        'city': ['New York', 'Paris', 'Tokyo']}
df = pd.DataFrame(data)

print(df['name'])

运行上述代码,输出结果如下:

0    John
1    Mike
2     Tom
Name: name, dtype: object

上述代码中,我们使用 df['name'] 选择了 DataFrame df 中的 name 列。

选择特定行

我们可以通过 lociloc 选择 DataFrame 中的特定行。loc 方法使用标签来选择行,而 iloc 方法使用行的索引来选择行。例如:

print(df.loc[1])
print(df.iloc[1])

运行上述代码,输出结果如下:

name        Mike
age           25
city       Paris
Name: 1, dtype: object
name      Mike
age         25
city     Paris
Name: 1, dtype: object

上述代码中,在第一个 print 中,我们使用 loc[1] 选择了 DataFrame df 中的 index 为 1 的行,也就是第二行。而在第二个 print 中,我们使用 iloc[1] 选择了 DataFrame df 中的第二行。

选择特定行列

我们可以结合使用上述方式选择 DataFrame 中的特定行列。例如:

print(df.loc[[0, 2], ['name', 'age']])
print(df.iloc[[0, 2], [0, 1]])

运行上述代码,输出结果如下:

   name  age
0  John   20
2   Tom   30
   name  age
0  John   20
2   Tom   30

上述代码中,在第一个 print 中,我们使用 loc 分别选择了 index 为 02 的行,以及 nameage 列,也就是仅保留了 nameage 列的第一行和第三行。在第二个 print 中,我们使用 iloc 的方式同样选择了第一行和第三行以及第一列和第二列。

结论

以上介绍了在 pandas.DataFrame 中选择特定值和对应值的方法和技巧,包括选择特定列、选择特定行以及结合使用这些技巧选择特定行列。pandas 的 DataFrame 支持更加丰富的数据操作,希望本文能够帮助各位程序员更好地使用 pandas。