# -*- coding: UTF-8 -*-
"""
利用groupby函数提取一天中的最大值、最小值, 求和、求平均
YMJ 20230515 20:36
"""
import numpy as np
from numpy import *
import pandas as pd
import os
import datetime
from datetime import datetime, date, timedelta
from pandas import DataFrame, Series
df = pd.read_excel("D:\\YMJ_file\\hahaha\\2014年阿柔超级站气象10分钟数据.xlsx")
# 求和
# 10min间隔的时间序列数据条,先将2023/05/15 20:20:00格式的时间转为2023/5/15,写为“date”列
df['date'] = df['Date'].dt.date
# 然后利用.sum()对2023/5/15这一天的所有数据进行加和
sum_rain = df.groupby('date')['Rain'].sum().to_dict()
# 这里是将求的新生成一列,相当于将和又赋给了每个时间点
df['Rain_day'] = df['date'].map(sum_rain)
# 求平均, .mean()
df['date'] = df['Date'].dt.date
sum_rain = df.groupby('date')['Rain'].mean().to_dict()
df['Rain_day'] = df['date'].map(sum_rain)
# 提取最大值, .max()
df['date'] = df['Date'].dt.date
sum_rain = df.groupby('date')['Rain'].max().to_dict()
df['Rain_day'] = df['date'].map(sum_rain)
# 提取最小值, .min()
df['date'] = df['Date'].dt.date
sum_rain = df.groupby('date')['Rain'].min().to_dict()
df['Rain_day'] = df['date'].map(sum_rain)
python利用groupby函数提取一天中的最大值、最小值或求和、求平均
于 2023-05-15 20:34:37 首次发布