是否有一个函数可以将 unix 时间戳转换为数据帧中的小时变量?
Is there a function that converts unix timestamps into just the hour variables in a dataframe?
我是 python 的新手,所以这看起来很明显,但我正在尝试用特定 [=21= 的小时数替换名为 unix_timestamp 的数据框中的列].例如:[1326429793] 会变成 [4]
我尝试使用 panda 方法 to_datetime,但它无法满足我的要求。
我目前在网上看到的几个例子中使用了 .hour
- datetime.utcfromtimestamp(1326429793).小时
但是将它应用于数据框时会输出错误
from datetime import datetime
import pandas as pd
#
traindf['hour'] = datetime.utcfromtimestamp(traindf['unix_timestamp_of_request_utc']).hour
上面的代码returns TypeError: cannot convert the series to class 'int'.
提前致谢!
您可以使用 apply:
traindf['hour'] = traindf['unix_timestamp_of_request_utc'].apply(pd.Timestamp.utcfromtimestamp).dt.hour
此外,pd.Timestamp 有自己的 utcfromtimestamp 方法。
我是 python 的新手,所以这看起来很明显,但我正在尝试用特定 [=21= 的小时数替换名为 unix_timestamp 的数据框中的列].例如:[1326429793] 会变成 [4]
我尝试使用 panda 方法 to_datetime,但它无法满足我的要求。 我目前在网上看到的几个例子中使用了 .hour - datetime.utcfromtimestamp(1326429793).小时 但是将它应用于数据框时会输出错误
from datetime import datetime
import pandas as pd
#
traindf['hour'] = datetime.utcfromtimestamp(traindf['unix_timestamp_of_request_utc']).hour
上面的代码returns TypeError: cannot convert the series to class 'int'.
提前致谢!
您可以使用 apply:
traindf['hour'] = traindf['unix_timestamp_of_request_utc'].apply(pd.Timestamp.utcfromtimestamp).dt.hour
此外,pd.Timestamp 有自己的 utcfromtimestamp 方法。