【发布时间】:2021-07-25 00:13:17
【问题描述】:
我对编码和尝试将日期时间列与 Pandas 中创建的日期范围合并比较陌生。
我正在尝试将已放入变量 start_dates 的日期时间列 StartDate(来自 DataFrame energy)与创建的名为 timeline 的 DatetimeIndex 相匹配,以便我有一个时间序列。
看起来是这样的:
In [1]: start_dates
Out[1]:
0 2016-06-25 00:00:00
1 2016-06-26 00:00:00
2 2016-06-27 00:00:00
rates 是一个 DataFrame,其中包含一系列费率,我试图通过附加到start_dates 来提供特定时间的费率信息:
In [2]: rates
Out[2]:
Rate1
0 4.8
1 5.9
2 2.6
我已尝试将start_dates 中的时间戳与timeline 中的日期范围相匹配。
我已经尝试了所有的方法,包括join、merge、insert、concat、append和assign,但我无法让两者合并。
我最近的尝试是:
timeline = pd.date_range('2007-03', '2022-06') #231 months
timeline = timeline.to_frame([timeline])
start_dates = energy.loc[:, 'StartDate']
start_dates = datetime.datetime.strptime(first_thous[:, 'StartDate'], '%Y-%m-%d').date()
rates = energy.loc[:, 'Rate1']
start_dates.append(rates)
timeline = timeline.reset_index(drop = True)
timeline.join(start_dates, how = 'inner')
print(timeline)
但是虽然没有错误,但这些列似乎没有将任何列附加或连接在一起,所以我实际上无法说出它为什么不起作用。
这是怎么回事?
预期的结果是:
In [3]: timeline
Out[3]:
Rate1
0 2016-06-25 4.8
1 2016-06-26 5.9
2 2016-06-27 2.6
【问题讨论】:
-
这可能有助于人们试图回答说这是使用熊猫
-
@Bushman 谢谢,永远忘记这一点。
-
您可以添加一些示例数据和预期输出吗?我认为how to provide a great pandas example 应该有所帮助
-
@jezrael 谢谢!。也试图提供具有预期输出的样本数据。这有意义吗?