问题描述:想用求每个child_asin近3天、近7天的平均值。
一、这是使用Excel做出来的结果,想要的目标。难点是asin 很多,有30多万条数据,不可能使用Excel解决;第二点就是每个asin的交接处,做不到区分,近3天的数据会算成上个asin 的数据;
二、解决方法:
1、导入模板
import pandas as pd
import numpy as np
from pandas import Series,DataFrame
2、读取数据
data = pd.read_excel('C:\\Users\\dell\\Desktop\\test.xlsx')
data.head()
3、对asin进行分组,并求出平均值
#根据asin计算每个asin的近3天平均值、近7天平均值
data['day3_mean'] = data.groupby('child_asin')['number'].apply(lambda x:x.rolling(3).mean())
data['day7_mean'] = data.groupby('child_asin')['number'].apply(lambda x:x.rolling(7).mean())
data.to_excel('C:\\Users\\dell\\Desktop\\data_new.xlsx')
4、结果展示