作为熊猫日期时间的列加载的数据:
df = pd.read_csv('test.csv', parse_dates=['timestamp'])
df
user timestamp speed
0 2 2016-04-01 01:06:26+01:00 9.76
1 2 2016-04-01 01:06:26+01:00 5.27
2 2 2016-04-01 01:06:26+01:00 8.12
3 2 2016-04-01 01:07:53+01:00 8.81
我想从timestamp
列中删除时区信息:
df['timestamp'].tz_convert(None)
TypeError: index is not a valid DatetimeIndex or PeriodIndex
发布于 2022-09-20 11:59:14
要使该解决方案正常工作,列应该是datetime
df['timestamp'].dt.tz_localize(None)
发布于 2022-09-20 12:04:25
给定csv中的字符串,如"2016-04-01 01:06:26+01:00",我可以考虑以下选项:
import pandas as pd
# will only work if *all* your timestamp contain "+hh:mm"
df = pd.read_csv('test.csv', parse_dates=['timestamp'])
df['timestamp'] = df.timestamp.dt.tz_localize(None)
print(df.timestamp.dtype)
datetime64[ns]
df = pd.read_csv('test.csv')
df['timestamp'] = pd.to_datetime(df.timestamp.str.split('+', expand=True)[0])
print(df.timestamp.dtype)
datetime64[ns]
df = pd.read_csv('test.csv', parse_dates=['timestamp'],
date_parser=lambda x: pd.to_datetime(x.split('+')[0]))
print(df.timestamp.dtype)
datetime64[ns]
https://stackoverflow.com/questions/73786021
复制相似问题