要按日期在多个组内复制值,你可以使用Pandas库进行处理。以下是一个示例代码,演示如何实现该功能:
import pandas as pd
# 创建一个示例数据集
data = {
'日期': ['2021-01-01', '2021-01-01', '2021-01-02', '2021-01-02', '2021-01-03', '2021-01-03'],
'组别': ['A', 'B', 'A', 'B', 'A', 'B'],
'数值': [10, 20, 30, 40, 50, 60]
}
df = pd.DataFrame(data)
# 将日期列转换为日期类型
df['日期'] = pd.to_datetime(df['日期'])
# 按日期和组别进行分组,并在每个组内复制数值
df['复制值'] = df.groupby(['日期', '组别'])['数值'].transform(lambda x: x.values[0])
print(df)
输出结果如下:
日期 组别 数值 复制值
0 2021-01-01 A 10 10
1 2021-01-01 B 20 20
2 2021-01-02 A 30 30
3 2021-01-02 B 40 40
4 2021-01-03 A 50 50
5 2021-01-03 B 60 60
在这个示例中,我们首先将日期列转换为日期类型,然后使用groupby
方法按日期和组别进行分组。接着,我们使用transform
方法并通过lambda
函数来复制每个组的第一个数值。最后,将复制的值添加到新的列中(复制值
)。
上一篇:按日期运行的R代码。
下一篇:按日期在范围内对查询结果进行分组