Python 我想在数据帧中将时间戳更改为日期时间
我想在数据帧中将时间戳更改为日期时间。 但它显示了TypeError:字符串索引必须是整数 我怎样才能解决它 我使用的是Python版本3.xPython 我想在数据帧中将时间戳更改为日期时间,python,dataframe,datetime,Python,Dataframe,Datetime,我想在数据帧中将时间戳更改为日期时间。 但它显示了TypeError:字符串索引必须是整数 我怎样才能解决它 我使用的是Python版本3.x 将熊猫作为pd导入 df=pd.DataFrame(内容) df.columns=['date'、'open'、'high'、'low'、'close'、'volume'] df['date']=[datetime.datetime.strtime(x['date'],%Y-%m-%dT%H:%m:%S]),用于df中的x] 打印(df) 我期望输出2
将熊猫作为pd导入
df=pd.DataFrame(内容)
df.columns=['date'、'open'、'high'、'low'、'close'、'volume']
df['date']=[datetime.datetime.strtime(x['date'],%Y-%m-%dT%H:%m:%S]),用于df中的x]
打印(df)
我期望输出2019-05-14 08:56:07,但实际输出是错误消息“TypeError:字符串索引必须是整数”您好,您可以试一试:
from datetime import datetime
df['date']= [datetime.fromtimestamp(x['date']) for x in df['date']]
print(df['date'])
编辑:
它也可以是df中x的
,它不返回行->它返回列名。我使用dataframe.apply()通过其他方式解决
谢谢您是否尝试过df['date']=pd.to_datetime(df['date'])
?是的,但它返回'1970-01-01 00:26:00.092400'而不是'2019-06-10 00:00:00'谢谢,但返回类型错误:'int'对象不可订阅
def time_date(thetime):
return datetime.datetime.fromtimestamp(thetime/1000).strftime('%Y-%m-%d %H:%M:%S')
df['date2'] = df['date'].apply(time_date)
date open ... volume date2
1896 1559746800000 9441000.0 ... 3585.904319 2019-06-06 00:00:00
1897 1559833200000 9300000.0 ... 4411.323529 2019-06-07 00:00:00
1898 1559919600000 9639000.0 ... 2459.404861 2019-06-08 00:00:00
1899 1560006000000 9692000.0 ... 1855.680572 2019-06-09 00:00:00
1900 1560092400000 9577000.0 ... 4817.845051 2019-06-10 00:00:00