将matlabdate转换为熊猫时间戳

时间:2019-03-28 15:06:03

标签: python pandas date

我有一个从matlab导入的数据集,想将其转换为熊猫数据框

由于matlab datenums定义为我尝试0000起的天数

    df["time"] = pd.to_datetime(time, unit='D',
               origin=pd.Timestamp('0000-01-01'))

其中time是一个包含matlab datenums的数组,而df将是数据帧

但我知道

    OutOfBoundsDatetime 
    ….
    OutOfBoundsDatetime: Out of bounds nanosecond timestamp: 1-01-01 00:00:00

此:https://pandas.pydata.org/pandas-docs/version/0.21.1/generated/pandas.errors.OutOfBoundsDatetime.html不幸地不是很有帮助

尝试时我已经遇到问题

     pd.Timestamp('0000-01-01')

显然,这是一个问题,因为时间戳记仅始于17世纪。 有简单的解决方法吗?

时间数组作为可重现的示例:

    time = array([[737509.45139931],[737509.45139931],[737509.45139931]])

当我使用

    df["time"] = pd.to_datetime(time-719529, unit='D')

jezrael在我得到的评论中建议

    ValueError: unit='D' not valid with non-numerical val='[17980.45139931]'

0 个答案:

没有答案