Вычисление среднесуточного значения в Python (один день имеет несколько значений для одной переменной) - PullRequest
0 голосов
/ 23 октября 2019

У меня есть один CSV-данные, который имеет несколько переменных в качестве ежедневного временного ряда. Но есть несколько значений для одного дня. Мне нужно рассчитать среднесуточные температуры из этих нескольких значений за весь период.

Файл CSV хранится здесь: https://drive.google.com/file/d/1zbojEilckwg5rzNfWtHVF-wu1f8d9m9J/view?usp=sharing

При ежедневной фильтрации вы можете увидеть 27 различных значений длякаждый день.

Я могу фильтровать по каждому дню и принимать средние значения, например:

inpcsvFile = 'C:/.../daily average - one day has multiple values.csv'
df = pd.read_csv(inpcsvFile)
df2=df[df['Dates']=='1/1/1971 0:00']
df3=df2.append(df2.agg(['mean']))

Но как я могу взять среднесуточные значения за весь период?

1 Ответ

0 голосов
/ 30 октября 2019

Вот решение, благодаря группе данных панд по дате и месяцу . Здесь я использовал «D» вместо «M».

import pandas as pd  
inpcsvFile = 'C:/.../daily average - one day has multiple values.csv'
df = pd.read_csv(inpcsvFile)
df['Dates'] = df['Dates'].astype(str) #convert entire "Dates" Column to string 
df['Dates']=pd.to_datetime(df['Dates']) #convert entire "Dates" Column to datetime format this time 
df.index=df['Dates'] #replace index with entire "Dates" Column to work with groupby function
df3=df.groupby(pd.TimeGrouper(freq='D')).mean() #take daily average of multiple values
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...