如果所有列都是数字列,则可以使用布尔索引:

In [1]: import pandas as pd

In [2]: df = pd.DataFrame({'a': [0, -1, 2], 'b': [-3, 2, 1]})

In [3]: df

Out[3]:

a b

0 0 -3

1 -1 2

2 2 1

In [4]: df[df < 0] = 0

In [5]: df

Out[5]:

a b

0 0 0

1 0 2

2 2 1

对于更一般的情况,此答案显示了私有方法timedelta:

In [1]: import pandas as pd

In [2]: df = pd.DataFrame({'a': [0, -1, 2], 'b': [-3, 2, 1],

'c': ['foo', 'goo', 'bar']})

In [3]: df

Out[3]:

a b c

0 0 -3 foo

1 -1 2 goo

2 2 1 bar

In [4]: num = df._get_numeric_data()

In [5]: num[num < 0] = 0

In [6]: df

Out[6]:

a b c

0 0 0 foo

1 0 2 goo

2 2 1 bar

对于timedelta类型,布尔索引似乎适用于单独的列,但不适用于整个数据框。 因此,您可以执行以下操作:

In [1]: import pandas as pd

In [2]: df = pd.DataFrame({'a': pd.to_timedelta([0, -1, 2], 'd'),

...: 'b': pd.to_timedelta([-3, 2, 1], 'd')})

In [3]: df

Out[3]:

a b

0 0 days -3 days

1 -1 days 2 days

2 2 days 1 days

In [4]: for k, v in df.iteritems():

...: v[v < 0] = 0

...:

In [5]: df

Out[5]:

a b

0 0 days 0 days

1 0 days 2 days

2 2 days 1 days

更新:与pd.Timedelta的比较适用于整个DataFrame:

In [1]: import pandas as pd

In [2]: df = pd.DataFrame({'a': pd.to_timedelta([0, -1, 2], 'd'),

...: 'b': pd.to_timedelta([-3, 2, 1], 'd')})

In [3]: df[df < pd.Timedelta(0)] = 0

In [4]: df

Out[4]:

a b

0 0 days 0 days

1 0 days 2 days

2 2 days 1 days

python 占位符 %z_python-如何用z替换熊猫数据框中的负数相关推荐

  1. python怎么索引txt数据中第四行_python-在熊猫数据框中按行计数编制索引

    我有一个带有两个元素的层次结构索引的"熊猫"数据框(" month"和" item_id").每行表示特定月份的特定项目,并具有用于关注多个 ...

  2. python数据框元素的性质_python-如何在熊猫数据框中设置某个字段的值?

    可以说我有一个像这样的熊猫数据框: d = {'col1': [1,2,3,4],'col2': ['','','']} df = pd.DataFrame(data=d) 出于某种原因,我必须遍历其 ...

  3. python3占位符详解_占位符最新:Python 占位符的使用方法详解_爱安网 LoveAn.com

    关于"占位符"的最新内容 聚合阅读 这篇文章主要介绍了Python 占位符的使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以 ...

  4. Python 占位符格式化详解

    Python 占位符格式化详解 占位符,顾名思义就是插在输出里站位的符号.占位符是绝大部分编程语言都存在的语法, 而且大部分都是相通的, 它是一种非常常用的字符串格式化的方式. 原文:https:// ...

  5. python占位符怎么使用

    Python占位符的使用非常简单,只需要在要使用占位符的地方使用一个占位符标记,比如"%s",然后在后面提供要插入的参数即可.例如,要将一个字符串插入另一个字符串,可以使用:&qu ...

  6. python占位符补数据_Python 占位符格式化的简单示例

    这篇文章主要为大家详细介绍了Python 占位符格式化的简单示例,具有一定的参考价值,可以用来参考一下. 对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! 占位符 ...

  7. python 数据框缺失值_Python:处理数据框中的缺失值

    python 数据框缺失值 介绍 (Introduction) In the last article we went through on how to find the missing value ...

  8. Python:在Pandas数据框中查找缺失值

    How to find Missing values in a data frame using Python/Pandas 如何使用Python / Pandas查找数据框中的缺失值 介绍: (In ...

  9. python数据框去重_【Python】基于某些列删除数据框中的重复值

    Python按照某些列去重,可用drop_duplicates函数轻松处理.本文致力用简洁的语言介绍该函数. 一.drop_duplicates函数介绍 drop_duplicates函数可以按某列去 ...

  10. python excel数据框_python – 熊猫数据框到Excel表

    根据您的上述需求,您将需要使用 Python(导出熊猫数据框)和VBA(删除现有工作表内容并复制/粘贴外部数据). 使用Python:使用to_csv或to_excel方法.我推荐使用更大的数据集更好 ...

最新文章

  1. vim 初学简单设置
  2. MySQL 优化原理(一)
  3. TimerTask定时任务
  4. Android企业级程序完全退出的解决方案
  5. 海康威视录像机(DS-8632N-E8)开机卡LOGO
  6. JMeter性能测试实战
  7. 刚刚创下新高的苹果再度自傲,iPhone14提价必将遭受挫败
  8. html ul变成三角形,用CSS来画空心三角形的方法
  9. 当你觉得一个人孤独的时候
  10. pygame的游戏窗口退出办法
  11. 第一个Java程序Hello World(IG牛逼)
  12. 【Rust日报】2022-07-20 极简主义 Poem 指南
  13. 用DTM实现网页转化跟踪,广告投放效果实时监测
  14. Evaluations
  15. 分布式系统中CAP原理
  16. 欧拉函数求互质数个数
  17. 【FPGA】 十二、Vivado DDS IP核实现扫频信号
  18. JPEG2000编码流程
  19. 如何让电脑开机自动拨号联网
  20. 自然数分解求最大乘积

热门文章

  1. 1000入门测试题目
  2. POJ2348 Euclid's Game
  3. leancloud 怎么绑定域名_云引擎支持绑定加速域名 | LeanCloud 八月变化
  4. python await timeout_python等待10秒执行下一命令的方法
  5. Mysql插入中文时错误:ERROR 1366 (HY000): Incorrect string value: '\xE6\x9D\x8E\xE5\x8B\x87' for column
  6. Java学习笔记——Lambda
  7. 载入java VM时出错216_Android6.0中oat文件的加载过程
  8. averyboy的区间2
  9. Java代码优化的35个细节,你用了吗?
  10. 【问题4】Redis 的并发竞争问题是什么?了解 redis 事务的 CAS 方案吗?