首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >‘df.columnName !=’Value‘’不工作?

‘df.columnName !=’Value‘’不工作?
EN

Stack Overflow用户
提问于 2019-04-22 02:44:46
回答 2查看 70关注 0票数 0

为什么在下表中运行后续代码时,Unknown值仍然显示在EVENT_TIME列中?

代码语言:javascript
复制
EVENT ID  EVENT_DATE EVENT_TIME 
85        2014/06/19    Unknown
86        2014/07/09   16.54.00
87        2014/07/10   19.24.00
88        2014/07/13   19.45.00 
89        2014/07/15   16.15.00
91        2015/04/20   16.55.00 
92        2015/06/25   12.48.00
93        2015/07/13    Unknown 
94        2015/07/14   17.30.00 
95        2015/07/16   18.05.00 
96        2015/07/29   17.57.00
代码语言:javascript
复制
df.dropna(inplace=True) #get rid of blanks

df[df.EVENT_TIME != 'Unknown'] #get rid of "Unknown" values

print(df)

结果:

代码语言:javascript
复制
122     3:00:00 PM
123     4:00:00 PM
124     3:45:00 PM
125     4:45:00 PM
126        Unknown
127     4:55:00 PM
128     2:05:00 PM
129     4:15:00 PM
130    11:04:09 PM
131     9:05:00 PM
132     3:20:00 PM
133    11:20:00 PM
134     2:00:00 PM
135     5:44:24 PM
136        Unknown
137     2:35:00 PM
138     3:30:00 PM

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-22 02:50:43

在处理Unknown值的步骤中,需要将结果过滤后的DataFrame分配给一个新变量。

代码语言:javascript
复制
df = df[df.EVENT_TIME != 'Unknown'] # alternative: df = df.query("EVENT_TIME!='Unknown'")

您也可以使用df.drop,使用inplace=True (参见this SO post)来完成这一任务。

代码语言:javascript
复制
df.drop(df.loc[df['EVENT_TIME']=='Unknown'].index, inplace=True)
票数 1
EN

Stack Overflow用户

发布于 2019-04-22 02:55:37

正如@edesz所述,您正在通过切片创建dataframe的副本,因此必须重新分配对象。如果要继续操作这个新副本,请在切片之后调用.copy()。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55788569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档