以下是一个示例代码,实现了按日期从前一行数据获取下一个数据的值的功能:
import pandas as pd
# 创建示例数据
data = {'日期': ['2022-01-01', '2022-01-02', '2022-01-03', '2022-01-04'],
'数值': [10, 20, 30, 40]}
df = pd.DataFrame(data)
# 将日期列转换为日期类型
df['日期'] = pd.to_datetime(df['日期'])
# 按日期排序
df = df.sort_values('日期')
# 添加一个新的列,存储下一个数据的值
df['下一个数值'] = df['数值'].shift(-1)
# 打印结果
print(df)
运行以上代码,输出结果为:
日期 数值 下一个数值
0 2022-01-01 10 20
1 2022-01-02 20 30
2 2022-01-03 30 40
3 2022-01-04 40 NaN
在代码中,首先创建了一个包含日期和数值的示例数据。然后,通过pd.to_datetime()
将日期列转换为日期类型,以便后续排序。接着,使用df.sort_values()
按日期对数据进行排序。最后,通过df['数值'].shift(-1)
将下一个数据的值添加到一个新的列中。
上一篇:按日期创建一个产品基础表