【问题标题】:Replacing empty cells in column with variable value用变量值替换列中的空单元格
【发布时间】:2020-06-21 16:54:31
【问题描述】:

我正在尝试通过使用名为 pandas 的 python 库(我认为)将名为“City”的列中的空单元格替换为同一列中最常见的值。

(此处使用 csv 文件)

这是我尝试过的,假设文件已被读取并可以编辑:

location = df['City'].mode()
basicdf = "df['City'].replace('',"+location+", inplace=True)"
basicdf

所以这里的逻辑是使用 .mode 给出连续出现频率最高的值并将该值放入变量“位置”

然后将该变量添加到第二行代码中。 (我根本不知道如何以正确的方式完成这一切。)

第二行代码似乎是将我想要的任何变量添加到这个 .replace 命令的唯一方法。

编辑:已经尝试过此代码,但最终也会在其他列中写入,除了“City”之外,这不是很好。

df['City'].replace('',np.nan,inplace=True)
df = df.fillna(df['City'].value_counts().index[0])

任何提示将不胜感激,主要是如何实现我想要做的事情(虽然不需要从头开始重新启动,因为我在使用 pandas 库的文件中有很多其他代码)和 如何在这些 pandas 命令中插入变量(如果可能的话)。

【问题讨论】:

标签: python excel pandas csv


【解决方案1】:

找到了答案,主要感谢 Pygirl,

df['City'].replace('',np.nan,inplace=True)
df['City'].fillna(df['City'].value_counts().index[0], inplace=True)

这些将首先用 NaN 替换空白或空单元格,然后使用所选列中最常见的值“填充”NaN,在本例中为“City”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-13
    • 1970-01-01
    相关资源
    最近更新 更多