【发布时间】:2018-05-18 12:34:56
【问题描述】:
我有一个numpy.ndarray 值是pandas._libs.tslib.Timestamp
例子:
在:type(closedDate)
输出:numpy.ndarray
在:type(closedDate[0])
输出:pandas._libs.tslib.Timestamp
我想将closedDate的内容转换成datetime.date的列表
我尝试了以下方法:
for i in closedDate:
closedDate[i].to_datetime()
但是得到这个错误:
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
怎么办? :/
【问题讨论】:
-
closedDate 是一个 numpy 数组而不是 pandas df 所以
closedDate.values会引发一个错误 @Ami Tavory 也存在这个问题首先涉及 pandas df,而我的是一个 numpy 数组,所以它不是重复的:P -
pd.to_datetime(closedDate, unit='s') -
ValueError: non convertible value 2017-09-25 14:39:00with the unit 's'我收到此错误@Ami Tavory -
如果您在问题中发布输入示例,将会有所帮助。
-
只是为了解决您的错误消息(这与您的类型转换没有任何关系):您混合了对索引的迭代和对元素的迭代。
for cd in closedDate: cd.to_datetime()或for i in range(len(closedDate)): closedDate[i].to_datetime()。然而,这些循环没有一个是有意义的,因为这些值没有保存在一个列表或任何地方,只是一无所获。此外:最好用我在 Python 中真正链接的一件事来编写这样的循环:for i, cd in enumerate(closedDate): ...- 这为您提供了循环中的元素和索引。
标签: python pandas python-datetime