Pandas:如何在使用pandas to_datetime时定义格式

Pandas:如何在使用pandas to_datetime时定义格式

在本文中,我们将介绍如何使用pandas to_datetime函数来将日期和时间数据转换为pandas的datetime格式,并介绍如何在此过程中定义日期和时间的格式。

阅读更多:Pandas 教程

转换为pandas datetime

pandas to_datetime函数可以将各种类型的日期字符串、日期时间字符串、时间戳转换为pandas的datetime格式,方便我们进行pandas的数据分析和处理。

我们先来看一个简单的例子,将一个日期字符串转换为pandas datetime格式:

import pandas as pd

date_str = "2022-01-01"
date = pd.to_datetime(date_str)
print(date)
Python

输出结果为:

2022-01-01 00:00:00
Python

定义日期和时间格式

如果我们的日期字符串和日期时间字符串的格式不是pandas默认的格式(即”%Y-%m-%d %H:%M:%S.%f”),此时我们需要在使用to_datetime时显式指定日期和时间的格式。

我们可以使用strftime格式化字符串来定义日期和时间格式,具体格式参见Python官方文档https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior

下面是一些常见的日期、时间和日期时间格式定义示例:

单独日期格式

日期格式 格式化字符串
2022-01-01 “%Y-%m-%d”
01/01/2022 “%m/%d/%Y”
2022年1月1日 “%Y年%-m月%-d日” (注意中文字符的显示需按系统环境配置)

示例代码如下:

import pandas as pd

# 将日期字符串转换为pandas datetime格式
date_str = "2022-01-01"
date = pd.to_datetime(date_str, format="%Y-%m-%d")
print(date)

# 将日期字符串转换为pandas datetime格式
date_str = "01/01/2022"
date = pd.to_datetime(date_str, format="%m/%d/%Y")
print(date)

# 将日期字符串转换为pandas datetime格式
date_str = "2022年1月1日"
date = pd.to_datetime(date_str, format="%Y年%-m月%-d日")
print(date)
Python

输出结果为:

2022-01-01 00:00:00
2022-01-01 00:00:00
2022-01-01 00:00:00
Python

单独时间格式

时间格式 格式化字符串
13:30:00 “%H:%M:%S”
下午1点30分 “%p%I点%M分” (注意中文字符的显示需按系统环境配置)

示例代码如下:

import pandas as pd

# 将时间字符串转换为pandas datetime格式
time_str = "13:30:00"
time = pd.to_datetime(time_str, format="%H:%M:%S")
print(time)

# 将时间字符串转换为pandas datetime格式
time_str = "下午1点30分"
time = pd.to_datetime(time_str, format="%p%I点%M分")
print(time)
Python

输出结果为:

1900-01-01 13:30:00
1900-01-01 13:30:00
Python

日期时间格式

日期时间格式 格式化字符串
2022-01-01 13:30:00 “%Y-%m-%d %H:%M:%S”
2022年1月1日下午1点30分 “%Y年%-m月%-d日%p%I点%M分” (注意中文字符的显示需按系统环境配置)

示例代码如下:

# 将日期时间字符串转换为pandas datetime格式
datetime_str = "2022-01-01 13:30:00"
datetime = pd.to_datetime(datetime_str, format="%Y-%m-%d %H:%M:%S")
print(datetime)

# 将日期时间字符串转换为pandas datetime格式
datetime_str = "2022年1月1日下午1点30分"
datetime = pd.to_datetime(datetime_str, format="%Y年%-m月%-d日%p%I点%M分")
print(datetime)
Python

输出结果为:

2022-01-01 13:30:00
2022-01-01 13:30:00
Python

总结

在使用pandas to_datetime函数将日期和时间数据转换为pandas的datetime格式时,我们可以通过定义格式化字符串来显式指定日期和时间的格式,以方便完成数据处理和分析任务。需要注意的是,格式化字符串的编写需按照Python官方文档的说明,且需要根据具体环境进行中文字符的配置。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册