📌  相关文章
📜  如何在 Pandas 中将日期时间转换为日期?

📅  最后修改于: 2022-05-13 01:55:03.459000             🧑  作者: Mango

如何在 Pandas 中将日期时间转换为日期?

DateTime 是格式为“yyyy-mm-dd HH:MM:SS”的日期和时间的集合,其中 yyyy-mm-dd 称为日期,HH:MM:SS 称为时间。

  • yyyy 代表年份
  • mm 代表月份
  • dd 代表日期
  • HH 代表小时
  • MM代表分钟
  • SS 代表秒。

在本文中,我们将讨论在 Pandas 中将 DateTime 转换为日期。为此,我们将使用 Pandas Python模块从 DateTime 中提取唯一的日期。

句法:

其中 data 是输入 DateTime 数据。



示例:使用 5 个日期时间值创建 Pandas 数据框并显示的Python程序

Python3
# importing pandas module
import pandas as pd
  
# create pandas DataFrame with one column with five 
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11', 
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24', 
                                '2021-01-15 20:02:10',
                                '1999-04-04 20:34:11']})
  
# display
print(df)


Python3
# importing pandas module
import pandas as pd
  
# create pandas DataFrame with one column with five 
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11', 
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10',
                                '1999-04-04 20:34:11']})
  
print("Original data")
print(df)
  
# convert datetime column to just date
df['Date'] = pd.to_datetime(df['DateTime']).dt.date
  
# display
print("Only date")
print(df)


Python3
# importing pandas module
import pandas as pd
  
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11', 
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24', 
                                '2021-01-15 20:02:10', 
                                '1999-04-04 20:34:11']})
  
print("---------Original data------------")
print(df.dtypes)
  
# convert datetime column to just date
df['Date'] = pd.to_datetime(df['DateTime']).dt.date
  
# display
print("--------Only date---------")
print(df.dtypes)


Python3
# importing pandas module
import pandas as pd
  
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11',
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10', 
                                '1999-04-04 20:34:11']})
  
print("Original data")
print(df)
  
# convert datetime column to just date using normalize()
# method
df['Date'] = pd.to_datetime(df['DateTime']).dt.normalize()
  
# display
print("date extracted")
print(df)


输出:

方法一:使用日期函数

通过将 date 方法与 pandas 一起使用,我们可以获得日期。

句法:

在哪里,

  • 数据框是输入数据框
  • to_datetime 是用于将数据时间字符串转换为数据时间的函数
  • DateTime 是数据框中的日期时间列
  • dt.date 用于将日期时间转换为日期
  • 日期列是从日期时间获取日期的新列

示例:通过日期函数使用pandas将日期时间转换为日期的Python程序

蟒蛇3

# importing pandas module
import pandas as pd
  
# create pandas DataFrame with one column with five 
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11', 
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10',
                                '1999-04-04 20:34:11']})
  
print("Original data")
print(df)
  
# convert datetime column to just date
df['Date'] = pd.to_datetime(df['DateTime']).dt.date
  
# display
print("Only date")
print(df)

输出:

我们还可以使用 dtypes 获取数据类型



示例:获取数据类型的Python程序

蟒蛇3

# importing pandas module
import pandas as pd
  
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11', 
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24', 
                                '2021-01-15 20:02:10', 
                                '1999-04-04 20:34:11']})
  
print("---------Original data------------")
print(df.dtypes)
  
# convert datetime column to just date
df['Date'] = pd.to_datetime(df['DateTime']).dt.date
  
# display
print("--------Only date---------")
print(df.dtypes)

输出:

方法二:使用 normalize() 方法

我们也可以使用 normalize() 方法来获取,该方法用于通过从 DateTime 中提取日期来规范化数据。我们使用 normalize() 方法通过 Pandas 获取数据

句法:

在哪里,

  • 数据框是输入数据框
  • to_datetime 是用于将数据时间字符串转换为数据时间的函数
  • DateTime 是数据框中的日期时间列
  • dt.normalize() 是用于将日期时间转换为日期的函数
  • 日期列是从日期时间获取日期的新列

示例:使用 Pandas normalize() 方法将日期时间转换为日期的Python代码。

蟒蛇3

# importing pandas module
import pandas as pd
  
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11',
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10', 
                                '1999-04-04 20:34:11']})
  
print("Original data")
print(df)
  
# convert datetime column to just date using normalize()
# method
df['Date'] = pd.to_datetime(df['DateTime']).dt.normalize()
  
# display
print("date extracted")
print(df)

输出: