📜  从数据框中切片列 - Python (1)

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

从数据框中切片列 - Python

在 Python 中,数据处理是一个非常重要的领域。在处理数据时,我们通常需要从数据中选择需要的列,也就是数据切片。本文将介绍如何在 Pandas 中使用 DataFrame 切片列。

1. 创建数据框

我们先创建一个数据框,作为例子:

import pandas as pd

data = {'Name': ['Tom', 'Jerry', 'Merry', 'Alice', 'Bob'],
        'Gender': ['Male', 'Male', 'Female', 'Female', 'Male'],
        'Age': [28, 31, 25, 29, 24],
        'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Chengdu']}
df = pd.DataFrame(data)
print(df)

输出结果:

    Name  Gender  Age       City
0    Tom    Male   28    Beijing
1  Jerry    Male   31   Shanghai
2  Merry  Female   25  Guangzhou
3  Alice  Female   29   Shenzhen
4    Bob    Male   24    Chengdu
2. 选择单个列

如果我们只需要选择单个列,可以使用以下方式:

name = df['Name']
print(name)

输出结果:

0      Tom
1    Jerry
2    Merry
3    Alice
4      Bob
Name: Name, dtype: object
3. 选择多个列

如果我们需要选择多个列,可以使用以下方式:

subset = df[['Name', 'Age']]
print(subset)

输出结果:

    Name  Age
0    Tom   28
1  Jerry   31
2  Merry   25
3  Alice   29
4    Bob   24
4. 使用 loc 函数

loc 函数提供了更加高级的切片方式,并且可以更加清晰地表达切片的意图。例如,我们可以使用 loc 函数选择名字为 Tom 的行,并且只选择其中的 Name 和 Age 两列:

subset = df.loc[df['Name'] == 'Tom', ['Name', 'Age']]
print(subset)

输出结果:

  Name  Age
0  Tom   28
5. 使用 iloc 函数

iloc 函数用于基于列表中的位置来选取数据,而不是标签或者布尔值。例如,我们可以使用 iloc 函数选取第一列和第三列:

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

输出结果:

    Name  Age
0    Tom   28
1  Jerry   31
2  Merry   25
3  Alice   29
4    Bob   24
6. 总结

本文介绍了在 Pandas 中如何使用 DataFrame 切片列。我们可以使用列名或者列的位置来选择需要的列,同时也可以使用 loc 和 iloc 函数来进行更加高级的数据切片。如果您在数据处理中遇到了问题,欢迎交流!