Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python转换不带年-月-日的时间戳_Python_Pandas_Datetime - Fatal编程技术网

python转换不带年-月-日的时间戳

python转换不带年-月-日的时间戳,python,pandas,datetime,Python,Pandas,Datetime,我有一个以时间列为字符串的数据帧,我应该将它转换为只有h:m:sec.ms的时间戳。这里有一个例子: import pandas as pd df=pd.DataFrame({'time': ['02:21:18.110']}) df.time= pd.to_datetime(df.time , format="%H:%M:%S.%f") df # I get 1900-01-01 02:21:18.110 如果没有格式标志,我会得到当前日期2020-12-16。没有似乎总

我有一个以时间列为字符串的数据帧,我应该将它转换为只有h:m:sec.ms的时间戳。这里有一个例子:

import pandas as pd
df=pd.DataFrame({'time': ['02:21:18.110']})
df.time= pd.to_datetime(df.time , format="%H:%M:%S.%f")
df # I get 1900-01-01 02:21:18.110
如果没有格式标志,我会得到当前日期2020-12-16。没有似乎总是包括在内的年-月-日,我怎么能得到邮票呢。谢谢

您需要这个:

df=pd.DataFrame({'time': ['02:21:18.110']})
df['time'] = pd.to_datetime(df['time']).dt.time

In [1023]: df
Out[1023]: 
              time
0  02:21:18.110000
你需要这个:

df=pd.DataFrame({'time': ['02:21:18.110']})
df['time'] = pd.to_datetime(df['time']).dt.time

In [1023]: df
Out[1023]: 
              time
0  02:21:18.110000

如果以后需要使用某些datetimelike方法处理值,最好是将值转换为TimeDelta,而不是按时间:

df['time'] = pd.to_timedelta(df['time'])
print (df)
                    time
0 0 days 02:21:18.110000

如果以后需要使用某些datetimelike方法处理值,最好是将值转换为TimeDelta,而不是按时间:

df['time'] = pd.to_timedelta(df['time'])
print (df)
                    time
0 0 days 02:21:18.110000


熊猫不单独处理日期和时间。您有一个默认日期(如果没有提供日期)或一个默认时间(如果没有提供时间)。剥离其中一个(例如,使用
.dt.time
)将为您留下一列数据类型对象,而不是datetime64。太棒了!那么就没有办法只把时间部分作为datetime类型了?(请参见下面的答案)数据类型对象在此上下文中表示
datetime.time
对象(对于给定的答案,请选中
type(df.time.iloc[0])
)。这是Python的标准库datetime,这意味着您不能使用pandas。pandas不单独处理日期和时间。您有一个默认日期(如果没有提供日期)或一个默认时间(如果没有提供时间)。剥离其中一个(例如,使用
.dt.time
)将为您留下一列数据类型对象,而不是datetime64。太棒了!那么就没有办法只把时间部分作为datetime类型了?(请参见下面的答案)数据类型对象在此上下文中表示
datetime.time
对象(对于给定的答案,请选中
type(df.time.iloc[0])
)。这是Python的标准lib-datetime,这意味着你不能比meHaha早一秒使用它。对不起。!谢谢你们两位!很好:)我现在注意到:这给了我一个对象。如何将其作为datetime,然后将其用于数据重采样?你能详细说明一下这种转换吗?@physiker-然后使用
timedelta
代替times,比meHaha早一秒。对不起。!谢谢你们两位!很好:)我现在注意到:这给了我一个对象。如何将其作为datetime,然后将其用于数据重采样?你能详细说明一下这个转换吗?@physiker-然后用
timedelta
代替times,谢谢!我知道你会一如既往地给我一个有用的评论:)谢谢!我知道你会一如既往地给我一个有用的评论:)