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

如何将pandas DataFrame中所有值设置为False?

把DataFrame所有值设为False的可行方案

以下是几种简单直接的方法,能把close DataFrame里的所有值(包括NaN、浮点数等)全部设置为False:

  • 直接赋值法(最简便)
    直接对整个DataFrame赋值,不管原有数据类型或内容,全部替换为False:

    close[:] = False
    

    这个方法会直接覆盖所有元素,包括NaN,一步到位。

  • applymap遍历法
    通过applymap遍历每个元素并设置为False,适合需要自定义逻辑的场景(这里逻辑就是固定返回False):

    close = close.applymap(lambda _: False)
    

为什么replace方法不好用?

replace主要用于替换特定值或匹配规则的内容,如果要覆盖所有值(包括NaN),需要写复杂的规则(比如同时匹配NaN和所有数值/字符串),反而不如上面的方法直接高效。比如尝试用replace的话,需要写:

import numpy as np
close.replace({np.nan: False}, regex=True, inplace=True)
close.replace(r'.*', False, regex=True, inplace=True)

但这种写法不仅繁琐,还可能因为数据类型匹配问题出现遗漏,完全没必要。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 15:10:26