【发布时间】:2021-10-04 22:22:54
【问题描述】:
我尝试将 excel 文件读入 pandas 数据框。但我只需要列直到一个名为“结束”的标记。这只是 excel 文件中空列中单元格中的字符串。这个标记之前的列数可以改变,所以我不能设置固定列。
到目前为止,我尝试将整个 excel 文件读入数据框。现在我正在尝试删除一列包含“结束”字符串之后的所有列,或者选择“结束”标记之前的所有列。
我怎样才能做到这一点?
也许是这样的?
df = df.iloc[:, : df != 'End']
我试图像这样找到包含“结束”的列:
end = [col for col in df.columns if 'End' in col]
但列表保持为空。
附:有些单元格有背景颜色,但不包含内容或公式。不知何故,熊猫将它们读取为空单元格,由于某种原因我无法用 na 值填充它们。我尝试了pd.read_excel(***, na_values='^\s+$') 和df.fillna('', inplace=True) 的各种变体,但没有成功。也许你也知道如何解决这个问题。
编辑:
“结束”位于列的第一个单元格中。导入数据框后,它会显示:
| Unnamed 13 |
|---|
| End |
| NaN |
| *empty |
用*empty表示数据框中的这个单元格只是空白,我不能转换成nan。在 Excel 文件中,此列具有背景颜色。也许这就是熊猫感到困惑的原因。这些空单元格显示在 Excel 具有带背景颜色的空单元格的任何位置。
【问题讨论】: