我正在尝试将时间序列数据的值分配给另一个填充缺失日期的数据。 但是当我尝试它时,它不正确地分配了值。
下面是我的代码
sales_data.head()
date CustomerID sales
0 2017-11-06 8069 10
1 2017-11-09 20101 58
2 2017-11-13 8069 10
3 2017-11-16 8083 5
4 2017-11-17 8117 2
sales_data["sales"].dtype
结果:dtype('int64')
ts_sales_data["sales"] = 0
ts_sales_data["sales"] = ts_sales_data["sales"].astype(np.int64)
ts_sales_data.head()
date sales
0 2017-11-06 0
1 2017-11-07 0
2 2017-11-08 0
3 2017-11-09 0
4 2017-11-10 0
ts_sales_data["sales"].dtype
结果:dtype('int64')
for x in sales_data["date"] :
ts_sales_data.loc[ts_sales_data["date"] == x, "sales"] = sales_data.loc[sales_data["date"] == x, "sales"]
ts_sales_data.head()
date sales
0 2017-11-06 10.0
1 2017-11-07 0.0
2 2017-11-08 0.0
3 2017-11-09 NaN
4 2017-11-10 0.0
分配值如上所述无法正常工作。 我尝试使用向下转换和astype更改“ ts_sales_data”的销售列的类型。 我也尝试在分配时在“ sales_data”中投射值, 但它仍然给我相同的结果 如何正确分配值?