首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将列中的datetime对象替换为常规字符串格式

将列中的datetime对象替换为常规字符串格式
EN

Stack Overflow用户
提问于 2022-08-29 23:47:06
回答 1查看 21关注 0票数 0

我有一个df,它在‘生命周期间隔’列中有3个唯一的值。它的时间间隔为4-11个月,但原始导入的df将其识别为datetime.datetime,返回一个长而烦人的日期格式值。我已经包括了一张图片,我尝试的代码和预期的输出:

尝试代码:

代码语言:javascript
运行
复制
df['Lifecycle Interval'].replace(datetime.datetime(2022, 4, 11, 0, 0), '4-11', inplace=True)

或者:

代码语言:javascript
运行
复制
df['Lifecycle Interval'].replace('2022-04-11 00:00:00', '4-11', inplace=True)

预期产出:

代码语言:javascript
运行
复制
df = pd.DataFrame({'Lifecycle Interval':['0-3', '4-11', '12+']})
df['Lifecycle Interval'].unique()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-30 00:02:46

如果它是日期时间,则可以应用一个函数将其转换为所需的格式,否则返回现有的值。

代码语言:javascript
运行
复制
import pandas as pd
import datetime

df = pd.DataFrame({'Lifecycle Interval':['0-3',datetime.datetime(2022,4,11,0,0),'12+']})
df['Lifecycle Interval'] = df['Lifecycle Interval'].apply(lambda x: x.strftime('%#m-%#d') if isinstance(x, datetime.datetime) else x)

输出

代码语言:javascript
运行
复制
  Lifecycle Interval
0                0-3
1               4-11
2                12+
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73535722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档