Skip to main content
 首页 » 编程设计

python之如何在 Pandas 中将字符串转换为没有天数的日期时间

2025年05月04日24shihaiming

例如数据框中的 issue_d 列是字符串,df['issue_d'] = 'Dec-2012'

我想将字符串转换为日期时间类型而不是字符串类型:2012-12,该怎么做?

我用

[datetime.strptime(x, '%b-%Y') for x in df.issue_d] 

但我得到的结果是 2012-12。

如何使用mysql和sqlalchemy得到没有天数的结果,并保存到数据库中?我在我的数据库中创建了一个 DateTime() 类型的列 issue_d。 我想将 df['issue_d'] 插入该表。

Table created using sqlalchemy

请您参考如下方法:

IIUC,这是一种方法:

从数据帧 df 开始:

>>> df 
    issue_d 
0  Dec-2012 
1  Jan-2013 

首先,转换为日期时间,然后应用strftime:

df['issue_d'] = pd.to_datetime(df['issue_d']) 
df['issue_d'] = df['issue_d'].dt.date.apply(lambda x: x.strftime('%Y-%m')) 
 
>>> df 
   issue_d 
0  2012-12 
1  2013-01 

请注意,它现在是您日期的字符串表示形式,但由于您需要格式化日期,我认为它可以解决您的问题。