为什么在下表中运行后续代码时,Unknown值仍然显示在EVENT_TIME列中?
表
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.00df.dropna(inplace=True) #get rid of blanks
df[df.EVENT_TIME != 'Unknown'] #get rid of "Unknown" values
print(df)结果:
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谢谢
发布于 2019-04-22 02:50:43
在处理Unknown值的步骤中,需要将结果过滤后的DataFrame分配给一个新变量。
df = df[df.EVENT_TIME != 'Unknown'] # alternative: df = df.query("EVENT_TIME!='Unknown'")您也可以使用df.drop,使用inplace=True (参见this SO post)来完成这一任务。
df.drop(df.loc[df['EVENT_TIME']=='Unknown'].index, inplace=True)发布于 2019-04-22 02:55:37
正如@edesz所述,您正在通过切片创建dataframe的副本,因此必须重新分配对象。如果要继续操作这个新副本,请在切片之后调用.copy()。
https://stackoverflow.com/questions/55788569
复制相似问题