【发布时间】:2021-01-11 07:09:48
【问题描述】:
我想将 pandas 数据框列中的每个值转换为字符串,然后删除一些文本。价值观是时代。例如,如果值为 11:21,我想删除列中每个元素中 : 右侧的每个。 11:21 应转换为 11。
【问题讨论】:
-
这不是从日期时间列中提取小时的正确方法。
标签: python python-3.x pandas dataframe
我想将 pandas 数据框列中的每个值转换为字符串,然后删除一些文本。价值观是时代。例如,如果值为 11:21,我想删除列中每个元素中 : 右侧的每个。 11:21 应转换为 11。
【问题讨论】:
标签: python python-3.x pandas dataframe
假设您有以下数据集:
df = pd.DataFrame({
'time': ['09:30:00','09:40:01','09:50:02','10:00:03']
})
df.head()
输出:
如果要将时间列作为字符串使用,可以使用以下代码:
df['hour'] = df['time'].apply(lambda time : time.split(':')[0])
df.head()
输出:
或者可以将时间转换为日期时间并提取小时:
df['hour'] = pd.to_datetime(df['time'], format='%H:%M:%S').dt.hour
df.head()
输出:
【讨论】: