【发布时间】:2020-04-16 16:14:37
【问题描述】:
我喜欢用基于其他列的formel填充一列中的空值:
data['datacqtr'].fillna(data['datadate'].dt.year.apply(str) + str('Q')+data['datadate'].dt.quarter.astype(str))
您能看出我的代码问题出在哪里吗?因为这段代码后面有一些空值。
我的数据框:
数据日期 |数据中心 2002-02-28|2002Q1
Dataacqtr 代表季度。 有时我有 datadate 但没有 datacqtr (季度)。所以我喜欢根据colmn datadate填写colmn datacqtr。
【问题讨论】:
-
这是对 python 语言的一个相当基本的误解。你不是在打电话给
fillna(),而是在重新分配它 -
呃,请确保您确实发布了正确的代码。我唯一能想到的就是你没有用过
inplace=True。您需要在发布之前使用minimal reproducible example 纠正这些事情......这是一行代码,没有真正的借口不正确 -
是的,这就是解决方案。缺少 inplace=true。谢谢
-
可能值得仔细阅读链接骗局中的所有答案,尤其是this