📌  相关文章
📜  除 pandas 之外的所有列 - Python (1)

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

除 pandas 之外的所有列 - Python

在 Pandas 中,我们通常会操作数据集的各个列,但有时候我们需要在数据集中选择除指定列(在这里是 pandas 列)之外的所有列。下面我们将介绍一些方法来实现这一目标。

使用 drop()函数

我们可以使用 Pandas 的 drop() 函数来删除指定列,然后再选择剩下的所有列。例如,我们有以下数据集:

import pandas as pd

data = {
    'col1': [1, 2, 3, 4],
    'col2': [5, 6, 7, 8],
    'pandas': [9, 10, 11, 12],
    'col4': [13, 14, 15, 16]
}
df = pd.DataFrame(data)

   col1  col2  pandas  col4
0     1     5       9    13
1     2     6      10    14
2     3     7      11    15
3     4     8      12    16

要选择除 pandas 之外的所有列,我们可以使用以下代码:

df = df.drop('pandas', axis=1)
other_cols = df.columns.tolist()

这将删除名为 'pandas' 的列,并将其余列的名称转换为列表。

使用 iloc[]函数

我们还可以使用 Pandas 的 iloc[] 函数来选择除指定列之外的所有列。例如,我们要选择除第3列(即名为 'pandas' 的列)之外的所有列,我们可以使用以下代码:

other_cols = df.iloc[:, ~2].columns.tolist()

这将选择所有列除去第3列,即:

Index(['col1', 'col2', 'col4'], dtype='object')
使用 loc[]函数

最后,我们可以使用 Pandas 的 loc[] 函数来选择除指定列之外的所有列。例如,我们要选择除名为 'pandas' 的列之外的所有列,我们可以使用以下代码:

other_cols = df.loc[:, ~df.columns.isin(['pandas'])].columns.tolist()

这将选择除名为 'pandas' 的列之外的所有列,即:

Index(['col1', 'col2', 'col4'], dtype='object')

这些是在 Pandas 中选择除指定列之外的所有列的几种方法。无论你选择哪种方法,都需要根据你的数据集和需求进行选择。