对于非连续数据集,数据可视化时候需要每七天一个采样点。要求是选择此前最新的数据作为当日的数据展示,譬如今天是2019-06-18,而数据集里只有2019-06-15,那就用2019-06-15的数据作为2019-06-18的数据去描点。
每七天一个采样点,会使得每天展示所选的数据都会有所不同。当时间往后推移一天,日期为2019-06-19,那么最新数据点从2019-06-19开始,第二个就是2019-06-12。这里就需要一个算法来快速的根据当前日期去选出(填充)一系列数据供数据可视化之用。
一个非常直接的实现方法:
- 先生成一串目标时间序列,从某个开始日到今天为止,每七天一个日期。
- 把这些日期map到数据集的日期, Eg. {“2019-06-18”:“2019-06-15”…} 。
- 把map到的数据抽出来用pd.concat接起来。
代码如下:
target_dates = pd.date_range(end=now, periods=100, freq="7D")
full_dates = pd.date_range(start, now).tolist()
org_dates = df.date.tolist()</