将unicode列转换为时间戳python
我得到:将unicode列转换为时间戳python,python,pandas,datetime,unicode,Python,Pandas,Datetime,Unicode,我得到: TypeError: Cannot compare type 'Timestamp' with type 'unicode' 当我尝试这样做时: df = df[df['timestamp'] >= start] df = df[df['timestamp'] < (end + timedelta(days=1))] 因此,我一直在尝试将该列转换为一个日期时间。我执行了以下操作,但它仍然是unicode数据类型 df['timestamp'] = pd.to_datet
TypeError: Cannot compare type 'Timestamp' with type 'unicode'
当我尝试这样做时:
df = df[df['timestamp'] >= start]
df = df[df['timestamp'] < (end + timedelta(days=1))]
因此,我一直在尝试将该列转换为一个日期时间。我执行了以下操作,但它仍然是unicode数据类型
df['timestamp'] = pd.to_datetime(df['timestamp'], format='%Y-%m-%d %H:%m:%s', errors='coerce')
错误显示:
这意味着您进行了比较,左侧是Timestamp
,右侧是unicode
(假设错误当然发生在比较级别)
由于错误发生在:
df = df[df['timestamp'] >= start]
这意味着start
是unicode
字符串,而不是时间戳
因此,您首先需要转换开始
,例如:
df = df[df['timestamp'] >= pd.to_datetime(start)]
df=df[df['timestamp']>=pd.to_datetime(start)]
我认为问题不在左手边,而在右手边。请您提供一个例子。@WillemVanOnsem您似乎是对的。我把pd.to_datetime(start)放在了一起,没有出现错误。这正是我所做的。谢谢你的解释/回答
df = df[df['timestamp'] >= start]
df = df[df['timestamp'] >= pd.to_datetime(start)]