我有定期将数据框拉进日期的日期。 数据通常是格式良好的,但有时在其他日期列中存在错误的数据。使用平均值填写数据框中的缺失日期
我总是期望在解析9位形式的日期:
(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)
(2015, 12, 29, 0, 30, 50, 1, 363, 0)
我应该如何检查并解决这一问题?
我想要做的就是用基于表示last_update + 1/2更新间隔的变量的日期替换,这样项目不会被后面的函数过滤掉。
所示数据是从feedparser发布的。
import pandas as pd
import datetime
# date with ugly data
df_date_ugly = pd.DataFrame({'date': [
(2015, 12, 29, 0, 30, 50, 1, 363, 0),
(2015, 12, 28, 23, 59, 12, 0, 362, 0),
'None', '',
(2015, 12, 28, 23, 59, 12, 0, 362, 0)
]})
# date is fine
df_date = pd.DataFrame({'date': [
(2015, 12, 29, 0, 30, 50, 1, 363, 0),
(2015, 12, 28, 23, 59, 12, 0, 362, 0),
(2015, 12, 28, 23, 59, 12, 0, 362, 0)
]})
Pseudocode
if the original_date is valid
return original_date
else
return substitute_date
你可以编辑你的问题,以显示日期应该是怎么样的?具体而言,在(2015,12,29,0,30,50,1,363,0)中,您为什么要阅读(0,30,50,1,363,0) – imp9
所示的数据是来自以下的published_parsed条目属性: feedparser,它来作为9整数。 – 12programmerwannabe
1,363,0代表什么?你越解释越容易,每个人都可以帮助你,即使那些可能不熟悉feedparser但熟悉熊猫的人。另外,请在last_update + 1/2值中包含您所需的输出。 – imp9