我正在为matplotlib图表构建一个日期轴,该图表应该每7天打一次。我正在使用numpy来构建范围和间隔,但我收到错误消息ValueError: negative dimensions are not allowed
我已将代码隔离到重要元素
import numpy as np
import datetime
first_date = datetime.datetime( 2014, 12, 13)
last_date = datetime.datetime( 2015, 1, 1)
print np.arange(first_date, last_date,7)
预期产出:
[datetime.datetime( 2014, 12, 13) datetime.datetime( 2014, 12, 20) datetime.datetime( 2014, 12, 27)]
答案 0 :(得分:2)
根据Paulo Scardine的np.datetime64的建议,我能够成功解决这个问题。我发布了其他人可能会觉得有用的解决方案:
import numpy as np
import datetime
first_date = np.datetime64('2014-12-13')
last_date = np.datetime64('2015-01-01')
print np.arange(first_date, last_date,7)
答案 1 :(得分:1)
NumPy拥有自己的优化版datetime.datetime
:numpy.datetime64
>>> import numpy as np
>>> np.arange(np.datetime64('2014-12-13'), np.datetime64('2015-01-01'), 7)
array(['2014-12-13', '2014-12-20', '2014-12-27'], dtype='datetime64[D]')