python - 使用 Pandas,如何删除具有 2 级多索引标题的数据框中的空列
问题描述
我有以下带有列标题的 2 级多索引的 Excel 电子表格:
我正在将 Excel 文件加载到 Pandas 数据框中,如下所示:
df = pd.read_excel('Bike Total Data.xlsx', header=[0,1], sheet_name="Control (E)")
而且我想使用 Pandas 删除空白(黑色)列(因为有数百个)。
我需要这样做的原因实际上是因为我面临的另一个问题(在 Pandas 中,出现了一个重复的列,名称后附加了“.1”)。但是我还没有找到解决该问题的方法,这就是为什么我要尝试删除空白列的原因……并且希望此后能够重新添加黑色列,或者在每个列的右侧添加粗边框MV (calc)
在完成所有必要的数据操作之后。但我离题了。
如何使用 Pandas 删除此数据框中的空白列?
解决方案
如果黑色列是唯一df
完全由NaN
s 组成的列,您可以尝试使用以下任一方法删除它们
clean_df = df.dropna(axis='columns', how='all')
或者
clean_df = df.loc[:, df.notna().any()]
推荐阅读
- c# - 如何使用 FFMPEG 传递参数
- python - 定义不带@的修饰函数
- flutter - 无法加载源“dart:_http/http_impl.dart”:
- .net - ZAP 的桌面应用程序代码审查
- kubernetes - Vsphere 虚拟机中的 Kubernetes
- powershell - 使用 powershell 查找全局可写文件
- python - Ansible/Jinja2 错误:没有名为“地图”的过滤器
- cucumber - 特定条件后跳过步骤
- sql - 分析函数 SUM 返回具有相同值的窗口的平均值
- azure - 带有 VNet 的 Azure 函数引发 SocketException:请求的地址在其上下文中无效