我有一个包含以下数据的pandas数据框,我想添加一个新列,对于每个日期,它返回过去3天内最常出现的'weather_type'。如果结果是平局,我希望返回最近的'weather_type'。
t("top", "left"),
t("top", "right"),
t("bottom", "left"),
t("bottom", "right"),
我已经设法使用以下内容创建了一个新列,其中包含过去3天内总'mudmm'的总和:
t("top", "center"),
t("bottom", "center")
我怀疑答案围绕着这个问题,但到目前为止我一直无法找到解决方案。
任何帮助都很受欢迎
科林
答案 0 :(得分:2)
要获得滚动模式,您可以执行以下操作:
from scipy.stats import mode
df['precipmm'].rolling(window=7).apply(lambda x: mode(x)[0])
答案 1 :(得分:0)
要使结果出现在新列中:
df = df.assign(new_column = df ['precipmm']。rolling(window = 7).apply(lambda x:mode(x)[0]))