我有一个数据集,时间戳作为格式之一,格式为09/07/2016 23:58。如何在Python中构建朴素贝叶斯模型中使用时间戳数据
我试图在这个数据上应用朴素贝叶斯,而且我正面临着下面的错误。请让我知道如何在我的模型
ValueError异常使用此数据:无效的文字浮法():2016年12月6日23:59
我有一个数据集,时间戳作为格式之一,格式为09/07/2016 23:58。如何在Python中构建朴素贝叶斯模型中使用时间戳数据
我试图在这个数据上应用朴素贝叶斯,而且我正面临着下面的错误。请让我知道如何在我的模型
ValueError异常使用此数据:无效的文字浮法():2016年12月6日23:59
您需要to_datetime
与参数errors='coerce'
的转换不坏可解析值NaT
:
df = pd.DataFrame({'date':['12/06/2016 23:59','12/06/2016 23:59', 'a']})
print (df)
date
0 12/06/2016 23:59
1 12/06/2016 23:59
2 a
print (pd.to_datetime(df.date, errors='coerce'))
0 2016-12-06 23:59:00
1 2016-12-06 23:59:00
2 NaT
Name: date, dtype: datetime64[ns]
对于测试坏值,用boolean indexing
- 返回所有行是NaT
:
print (df[pd.to_datetime(df.date, errors='coerce').isnull()])
date
2 a
从你的问题是不是很清楚自己在做什么,但目前已经有几个例子在互联网上:
而有些代码段在SO中:
什么是'DF [ '时间戳'。DTYPE?' –
确定'dtype'您的日期列的是'datetime'?用'df.dtypes'测试它。如果不是,似乎有一些不好的数据 - 如果不能转换为日期时间,则使用'pd.to_datetime(df.date,erors ='coerce')' – jezrael
将值转换为'NaT'。 – jezrael