Pandas:从一列中获取日期并将其添加到另一列中

标签 pandas dataframe

数据框为:

time         date    
11:42:14.556 2023-12-10 10:12:00.129465868
11:42:16.005 2023-12-11 15:25:00.759067848
11:42:32.175 2023-12-12 13:56:00.653087940

列是对象类型。

如何从“日期”列中获取日期并将其添加到“时间”列?

最佳答案

使用dt.normalize转换后to_datetime :

df['time'] = pd.to_datetime(df['date']).dt.normalize().add(pd.to_timedelta(df['time']))

或者如果两列都是字符串,extract日期并连接:

df['time'] = df['date'].str.extract('(\S+)', expand=False)+' '+df['time']

# or
df['time'] = df['date'].str[:10]+' '+df['time']

输出:

                     time                           date
0 2023-12-10 11:42:14.556  2023-12-10 10:12:00.129465868
1 2023-12-11 11:42:16.005  2023-12-11 15:25:00.759067848
2 2023-12-12 11:42:32.175  2023-12-12 13:56:00.653087940

关于Pandas:从一列中获取日期并将其添加到另一列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77678190/

相关文章:

python - 如何在循环中保存多个图?

python - Pandas 将另一个数据框中的值复制到我的数据框中

python - 连接 pandas 数据帧 - 传递的所有对象都是 None

pandas - 使用日期时间索引根据日期在 Pandas 数据框中插入行

python - 日期不匹配时如何在 Pandas 中加入时间序列?

python - 连接两个数据帧并从索引创建多索引

pandas - Groupby 两列其中一列是日期时间

python - 如何使用 for 循环将列值添加到数据框字典中,以便每个数据框都有一个唯一的列?

python - 在 Python 中将带有空格的字符串转换为具有所需尺寸的数据框

python - Pandas-根据列值查找行中的第一次出现