【问题标题】:Python Pandas remove white blank space after import data from excelPython Pandas 从 excel 导入数据后删除空白区域
【发布时间】:2021-05-29 01:06:03
【问题描述】:

我将一些数据从 excel 导入数据框。在 excel 中有一些单元格是空白的(不是空的),即有人从键盘按空格键来填充 excel 中的单元格,因此没有字符但仍然看起来是空白的。在数据框中,我尝试使用以下功能对其进行清理。但是数据框在清理后不显示为 NAN。有没有可以清洗的功能?

df.columns = df.columns.str.strip()

【问题讨论】:

标签: python excel pandas


【解决方案1】:

您确定df.columns = df.columns.str.strip() 是您想要的吗?这只会改变列名。如果要更改单元格内的值,请考虑replace

df.replace('^\s+$', np.nan, regex=True)

【讨论】:

    【解决方案2】:

    我无法回复您的评论,因为我没有代表 :(.

    如果我对您的理解正确,您希望在有空格的地方放置一个 NaN 值?

    我尝试了以下方法,它似乎有效,如果有帮助,请告诉我。

    import pandas as pd
    import numpy as np
    
    df = pd.DataFrame({'Names': ['betty', 'chris',' ',  'steve', 'carly']})
    
    df.loc[df['Names'] == ' '] = np.nan
    

    如果您需要遍历每一列,您可以将 df.loc 放在一个循环中,如下所示。

    df = pd.DataFrame({'Names': ['betty', 'chris',' ',  'steve', 'carly'],'Age':\
                   ['40', ' ', '32', '44', '69']})
    
    for col in df.columns:
        df[col].loc[df[col] == ' '] = np.nan
    

    【讨论】:

    • 如何为整个数据框而不是单个列执行此操作?
    • 编辑帖子
    猜你喜欢
    • 2021-12-21
    • 1970-01-01
    • 2017-06-29
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-09
    • 1970-01-01
    相关资源
    最近更新 更多