У меня есть CSV-файл с данными каждые две минуты в течение 2 лет, и я хочу запустить код для расчета 24-часовых средних.В идеале я хотел бы, чтобы код перебирал данные, вычислял средние значения и стандартные отклонения и R ^ 2 между dataA и dataB для каждого 24-часового периода, а затем выводил эти новые данные в новый CSV-файл (с меткой даты и рассчитанными данными длякаждый 24-часовой период).
Данные имеют необычную временную метку, которая, я думаю, может слегка сбить меня с толку.Я пробовал разные циклы для циклов итерации по данным, но я не уверен, как указать, что я хочу получить средние значения и т. Д. Для каждого 24-часового периода.
Это код, который у меня есть до сих пор, но я не уверен, как выполнить цикл For Loop, чтобы добиться того, чего я хочу.Если кто-то может помочь, это было бы здорово!
import math
import pandas as pd
import os
import numpy as np
from datetime import timedelta, date
# read the file in csv
data = pd.read_csv("Jacaranda_data_HST.csv")
# Extract the data columns from the csv
data_date = data.iloc[:,1]
dataA = data.iloc[:,2]
dataB = data.iloc[:,3]
# set the start and end dates of the data
start_date = data_date.iloc[0]
end_date = data_date.iloc[-1:]
# for loop to run over every 24 hours of data
day_count = (end_date - start_date).days + 1
for single_date in [d for d in (start_date + timedelta(n) for n in
range(day_count)) if d <= end_date]:
print np.mean(dataA), np.mean(dataB), np.std(dataA), np.std(dataB)
# output new csv file - **unsure how to call the data**
csvfile = "Jacaranda_new.csv"
outdf = pd.DataFrame()
#outdf['dataA_mean'] = ??
#outdf['dataB_mean'] = ??
#outdf['dataA_stdev'] = ??
#outdf['dataB_stdev'] = ??
outdf.to_csv(csvfile, index=False)