You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

保留Pandas数据框第7列及以后非空行时触发TypeError报错求助

解决Pandas dropna触发TypeError: unhashable type: 'Index'的问题

问题场景

需要保留Pandas DataFrame中第7列及之后所有列均不为空值的行,运行以下代码时触发错误:

import pandas as pd
import numpy as np

merged_df = merged_df.dropna(merged_df.columns[7:])

报错信息

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
/tmp/ipykernel_17/1347313789.py in <module>
      1 # Drop NA
----> 2 merged_df = merged_df.dropna(merged_df.columns[7:])
      3 merged_df

/opt/conda/lib/python3.7/site-packages/pandas/util/_decorators.py in wrapper(*args, **kwargs)
    309                     stacklevel=stacklevel,
    310                 )
--> 311             return func(*args, **kwargs)
    312 
    313         return wrapper

/opt/conda/lib/python3.7/site-packages/pandas/core/frame.py in dropna(self, axis, how, thresh, subset, inplace)
   5942             raise TypeError("supplying multiple axes to axis is no longer supported.")
   5943 
--> 5944         axis = self._get_axis_number(axis)
   5945         agg_axis = 1 - axis
   5946 

/opt/conda/lib/python3.7/site-packages/pandas/core/generic.py in _get_axis_number(cls, axis)
    544     def _get_axis_number(cls, axis: Axis) -> int:
    545         try:
--> 546             return cls._AXIS_TO_AXIS_NUMBER[axis]
    547         except KeyError:
    548             raise ValueError(f"No axis named {axis} for object type {cls.__name__}")

TypeError: unhashable type: 'Index'

错误原因

dropna()的第一个参数是axis,仅接受0/1或'index'/'columns'这类可哈希的参数,你直接传入了merged_df.columns[7:](一个Index对象),导致触发"unhashable type: 'Index'"错误。要指定检查空值的列,应该用subset参数。

正确代码

import pandas as pd
import numpy as np

# 保留第7列及之后所有列无空值的行
merged_df = merged_df.dropna(subset=merged_df.columns[7:])

补充说明

  • subset参数支持传入列名列表或Index对象,用来限定需要检查空值的列范围
  • 默认how='any',会删除指定列中任意一列存在空值的行,符合你"所有列均不为空值"的需求;如果需要仅删除指定列全部为空值的行,可显式设置how='all'

内容的提问来源于stack exchange,提问作者melolilili

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 13:42:22