如何在 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 中提取唯一的日期。
句法:
pd.DataFrame(data)
其中 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)
输出:
DateTime
0 2021-01-15 20:02:11
1 1989-05-24 20:34:11
2 2020-01-18 14:43:24
3 2021-01-15 20:02:10
4 1999-04-04 20:34:11
方法一:使用日期函数
通过将 date 方法与 pandas 一起使用,我们可以获得日期。
句法:
dataframe[‘Date’] = pd.to_datetime(dataframe[‘DateTime’]).dt.date
在哪里,
- 数据框是输入数据框
- 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 获取数据
句法:
dataframe[‘Date’] = pd.to_datetime(dataframe[‘DateTime’]).dt.normalize()
在哪里,
- 数据框是输入数据框
- 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)
输出: