我知道这在pandas中有效(df是数据帧,op是列,mult是浮点变量):
df.eval("op = op * @mult", inplace=True)
但是可以在行的子集(就地)上执行此操作吗?这给了我一个错误(ex_date是timestamp类型的局部变量,df的索引是时间戳):
df.eval("df.loc[df.index < @ex_date, op] = op * @mult", inplace=True)
解决方法:
目前无法进行条件评估.有一个出色的功能要求.建议的语法将使您的示例看起来像:
df.eval("op = op * @mult if index < @ex_date else op", inplace=True)
(SOURCE)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。