📌  相关文章
📜  pandas 获得不同的列值 - Python (1)

📅  最后修改于: 2023-12-03 15:03:30.791000             🧑  作者: Mango

pandas 获得不同的列值 - Python

在数据分析过程中,经常需要对数据中的不同列进行操作。pandas 是 Python 中一个非常强大的数据分析库,其中包括了大量对数据的操作和处理方法。本文将介绍如何使用 pandas 获得不同列的值。

获取列名

在 pandas 中,我们可以使用 columns 属性获取数据框的列名。下面是一个简单的代码示例:

import pandas as pd

data = {"name": ["Bob", "Alice"], "age": [25, 30], "gender": ["male", "female"]}
df = pd.DataFrame(data)

print(df.columns)

输出:

Index(['name', 'age', 'gender'], dtype='object')

这表示数据框 df 中有三列,分别为 'name''age''gender'

获取所有列的值

我们可以使用 [列名] 的方式来获取数据框中某一列的值。如果要获取多列的值,可以使用 [[列名1, 列名2, ...]] 的方式来获取,其中列名需要用逗号分割。下面是一个例子:

import pandas as pd

data = {"name": ["Bob", "Alice"], "age": [25, 30], "gender": ["male", "female"]}
df = pd.DataFrame(data)

print(df[['name', 'gender']])

输出:

    name  gender
0    Bob    male
1  Alice  female
获取不同列的值

要获取不同列的值,我们可以使用 lociloc 方法。其中,loc 方法基于标签来获取行或列,iloc 方法则基于位置来获取行或列。下面是一个例子:

import pandas as pd

data = {"name": ["Bob", "Alice"], "age": [25, 30], "gender": ["male", "female"]}
df = pd.DataFrame(data)

print(df.loc[:, ['name', 'gender']])

输出:

    name  gender
0    Bob    male
1  Alice  female

其中,: 表示获取所有的行,['name', 'gender'] 则表示获取 'name''gender' 这两列的值。需要注意的是,loc 方法中的列名需要放在方括号内,并且需要用逗号和行选取条件分开。

如果我们想要根据列的位置来获取列的值,可以使用 iloc 方法。例如:

import pandas as pd

data = {"name": ["Bob", "Alice"], "age": [25, 30], "gender": ["male", "female"]}
df = pd.DataFrame(data)

print(df.iloc[:, [0, 2]])

输出:

    name  gender
0    Bob    male
1  Alice  female

其中,[0, 2] 表示要获取的列的位置,索引从 0 开始。:. 表示获取所有的行。$\text{}$

以上就是使用 pandas 获得不同列值的方法。这些方法的运用可以帮助我们更方便地操作和处理数据。