我在日期时间序列中有一些压力,温度和湿度数据(即列:日期,时间,压力,温度,湿度)。我想建立一个函数,在给定的日期和时间(输入)内给出这三个参数的平均值和标准值。到目前为止,我已设法将数据导入数据框,并将变量temp,press和humid定义为数据框中的列。我很想弄清楚我将如何将日期时间(输入)连接到其他三个数据列。有任何想法吗?我已经阅读了pandas doc,它让我感到困惑......因为它总是会创建自己的时间日期列系列。 = /
import pandas as pd
import numpy as np
def TempPressHumid(time_start, time_end, date_start, date_end, df1):
temp = df1[date_start:date_end]
temp = df1.between_time(time_start,time_end)
out = {'temp_avg':np.mean(temp['temp']),
'temp_std':np.std(temp['temp']),
'press_avg':np.mean(temp['press']),
'press_std':np.std(temp['press']),
'humid_avg':np.mean(temp['humid']),
'humid_std':np.std(temp['humid'])}
print out
df = pd.DataFrame.from_csv('TM4CVC.csv')
df1 = pd.DataFrame({'temp': df['Ch2_Value'],
'press':df['Ch3_Value'],
'humid':df['Ch1_Value']})
# want to add my time and date index here?
TempPressHumid(time_start = '08:29:19', time_end = '08:29:19',
date_start = '2012-06-25', date_end = '2012-06-025', df1 = df1)
答案 0 :(得分:0)
我建议您将日期和时间转换为日期时间,这样您的日期和时间列就会变成一列,然后将新的日期时间列设置为数据帧的索引,那么您应该能够根据您的时间间隔进行选择
(就在我的脑海中,您可以将日期和时间列连接成一个字符串,然后使用dateutils解析器将该字符串更改为日期时间 - 可能有一种更简单的方法,但我没有花了很多时间(双关语))