0

我创建了“日期”系列:

Date = pd.Series(pd.date_range('2005-06-30', 
                       periods = 63, freq = '3M'))

哪个工作正常:

Date.head()

输出

0   2005-06-30
1   2005-09-30
2   2005-12-31
3   2006-03-31
4   2006-06-30
dtype: datetime64[ns]

然后,当我尝试将其添加到我的 df 时,我只得到 NaT 值:

Median_Property_Prices['Date'] = Date
Median_Property_Prices.head()

输出

Period    | Central_&_Greater_London_Median_Property_Price | Date
----------|------------------------------------------------|-------
2005 - Q2 | 275034.852                                     | NaT
2005 - Q3 | 281568.432                                     | NaT
2005 - Q4 | 293130.952                                     | NaT
2006 - Q1 | 299590.252                                     | NaT
2006 - Q2 | 299385.228                                     | NaT

我错过了什么?为什么日期列中没有季度数据?

4

1 回答 1

0

我已经获取了您的示例数据,并且能够创建该Date列。看看您是否可以运行下面的代码并将该Date字段添加到数据框中。

# create quarterly series
Date = pd.Series(pd.date_range('2005-06-30', periods = 63, freq = '3M'))
# create dataframe
Median_Property_Prices = pd.DataFrame({
    'Period': ['2005 - Q2', '2005 - Q3', '2005 - Q4', '2006 - Q1', '2006 - Q2'],
    'Central_&_Greater_London_Median_Property_Price': [275034.852, 281568.432, 293130.952, 299590.252, 299385.228]
})
# add date field
Median_Property_Prices['Date'] = Date

当我称之为Median_Property_Prices输出时。

       Period | Central_&_Greater_London_Median_Property_Price  | Date
--------------|-------------------------------------------------|------------
0   2005 - Q2 | 275034.852                                      | 2005-06-30
1   2005 - Q3 | 281568.432                                      | 2005-09-30
2   2005 - Q4 | 293130.952                                      | 2005-12-31
3   2006 - Q1 | 299590.252                                      | 2006-03-31
4   2006 - Q2 | 299385.228                                      | 2006-06-30

如果您可以使用上面的代码生成上面的输出,则您拥有的原始数据框可能存在问题。

于 2021-07-21T20:23:23.100 回答