📜  pandas 删除空列 - Python (1)

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

pandas 删除空列 - Python

在进行数据处理或分析时,我们经常需要处理含有缺失值或空列的数据集。在 Pandas 中,删除空列是一项常见的操作。

方法1:删除所有含有缺失值的列

可以使用 dropna 函数删除所有含有缺失值的列。默认情况下,dropna 函数将删除所有含有缺失值的行或列。

import pandas as pd

# 创建示例数据
data = {'col1': [1, 2, None, 4],
        'col2': [None, None, None, None],
        'col3': [5, 6, 7, 8]}

df = pd.DataFrame(data)

# 删除所有含有缺失值的列
df.dropna(axis=1, how='any', inplace=True)
print(df)

执行结果:

   col3
0     5
1     6
2     7
3     8

axis=1 表示删除列,how='any' 表示删除含有任意缺失值的列。

方法2:删除指定列

可以使用 drop 函数删除指定列。需要提供要删除的列名或列索引。

import pandas as pd

# 创建示例数据
data = {'col1': [1, 2, None, 4],
        'col2': [None, None, None, None],
        'col3': [5, 6, 7, 8]}

df = pd.DataFrame(data)

# 删除指定列
df.drop(['col2'], axis=1, inplace=True)
print(df)

执行结果:

   col1  col3
0   1.0     5
1   2.0     6
2   NaN     7
3   4.0     8

axis=1 表示删除列,inplace=True 表示在原数据集上进行修改。

注意事项
  • 删除空列会改变原数据集。如果需要保留原数据集,应首先进行备份。
  • 删除空列可能会降低数据集的维度。应该根据实际情况进行判断。