[英]Convert from timestamp (Epoch time) to Proper Pandas DateTime colimn
尝试将列从时间戳转换为日期时间,最后打印所需的结果。 源是 Unix 纪元时间戳。 我可以转换单个值,但无法对整列数据进行转换。 谢谢!!
import pandas as pd
import numpy as np
from datetime import datetime
thd = pd.DataFrame(data=data["candles"])
data={'candles': [{'open': 1417.5,
'high': 1417.52,
'low': 1416.95,
'close': 1416.95,
'volume': 508,
'datetime': 1590758940},
{'open': 1416.95,
'high': 1420.18,
'low': 1415.06,
'close': 1416.64,
'volume': 32934,
'datetime': 1590759000},]
}
thd["Time"]=pd.to_datetime(thd["datetime"])
display(thd)
datetime.fromtimestamp(1590759060) #<---this is the result I want to get on dataframe
将pd.to_datetime
与unit='s'
一起使用:
In [731]: thd['datetime'] = pd.to_datetime(thd['datetime'], unit='s')
In [732]: thd
Out[732]:
open high low close volume datetime
0 1,417.50 1,417.52 1,416.95 1,416.95 508 2020-05-29 13:29:00
1 1,416.95 1,420.18 1,415.06 1,416.64 32934 2020-05-29 13:30:00
您可以在列上使用 apply 为列中的每个值执行此 function
thd['datetime'].apply(datetime.fromtimestamp)
完整代码
import pandas as pd
import numpy as np
from datetime import datetime
data={'candles': [{'open': 1417.5,
'high': 1417.52,
'low': 1416.95,
'close': 1416.95,
'volume': 508,
'datetime': 1590758940},
{'open': 1416.95,
'high': 1420.18,
'low': 1415.06,
'close': 1416.64,
'volume': 32934,
'datetime': 1590759000},]
}
thd = pd.DataFrame(data=data["candles"])
thd['datetime_converted'] = thd['datetime'].apply(datetime.fromtimestamp)
thd
结果
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.