在Pandas中,你可以使用apply()
函数结合lambda表达式或其他函数来根据其他列中的日期/时间信息创建新列。以下是一个示例,展示了如何根据现有日期列创建一个新的日期列,该列包含原始日期加上一定天数的结果。
假设我们有一个DataFrame,其中包含一个名为original_date
的日期列,我们想要创建一个新列new_date
,该列的值是original_date
加上5天。
import pandas as pd
# 创建示例DataFrame
data = {
'original_date': ['2023-01-01', '2023-01-10', '2023-01-15']
}
df = pd.DataFrame(data)
# 将字符串转换为日期时间对象
df['original_date'] = pd.to_datetime(df['original_date'])
# 使用apply()函数创建新列
df['new_date'] = df['original_date'].apply(lambda x: x + pd.Timedelta(days=5))
print(df)
original_date new_date
0 2023-01-01 2023-01-06
1 2023-01-10 2023-01-15
2 2023-01-15 2023-01-20
pd.to_datetime()
将日期字符串转换为Pandas的日期时间对象。apply()
方法和lambda表达式来对每一行的日期加上5天,并将结果存储在新列new_date
中。pd.to_datetime()
进行转换。tz_localize()
和tz_convert()
方法处理时区问题。通过这种方式,你可以灵活地根据现有数据创建新的日期时间列,满足不同的数据处理需求。
领取专属 10元无门槛券
手把手带您无忧上云