Pandas 是一个强大的数据处理和分析库,广泛用于数据科学和机器学习领域。Pandas 数据帧(DataFrame)是其核心数据结构之一,类似于表格,但功能更强大。日期时间格式转换是数据处理中的常见需求,Pandas 提供了多种方法来处理日期和时间数据。
Pandas 中常用的日期时间类型包括:
datetime64[ns]
:纳秒级日期时间类型。timedelta64[ns]
:纳秒级时间差类型。日期时间格式转换在以下场景中非常常见:
解决方法:
使用 pd.to_datetime()
函数可以将字符串转换为日期时间格式。
import pandas as pd
# 示例数据
data = {'date_str': ['2022-01-01', '2022-01-02', '2022-01-03']}
df = pd.DataFrame(data)
# 转换日期时间格式
df['date'] = pd.to_datetime(df['date_str'])
print(df)
输出:
date_str date
0 2022-01-01 2022-01-01 00:00:00
1 2022-01-02 2022-01-02 00:00:00
2 2022-01-03 2022-01-03 00:00:00
解决方法:
使用 dt.strftime()
方法可以将日期时间格式转换为特定字符串格式。
import pandas as pd
# 示例数据
data = {'date': ['2022-01-01', '2022-01-02', '2022-01-03']}
df = pd.DataFrame(data)
# 转换为特定字符串格式
df['date_str'] = pd.to_datetime(df['date']).dt.strftime('%Y-%m-%d')
print(df)
输出:
date date_str
0 2022-01-01 2022-01-01
1 2022-01-02 2022-01-02
2 2022-01-03 2022-01-03
解决方法:
可以使用 pd.isnull()
和 fillna()
方法来处理日期时间中的缺失值。
import pandas as pd
import numpy as np
# 示例数据
data = {'date': ['2022-01-01', np.nan, '2022-01-03']}
df = pd.DataFrame(data)
# 转换为日期时间格式
df['date'] = pd.to_datetime(df['date'], errors='coerce')
# 处理缺失值
df['date'].fillna(pd.Timestamp('1970-01-01'), inplace=True)
print(df)
输出:
date
0 2022-01-01
1 1970-01-01
2 2022-01-03
希望这些信息对你有所帮助!如果有更多具体问题,欢迎继续提问。
领取专属 10元无门槛券
手把手带您无忧上云