将大熊猫数据帧拆分为较小数据帧的块并进行绘图的迭代

时间:2020-05-31 21:39:58

标签: pandas iteration slice chunks

因此,我是python的新手,我一点经验都没有。这是我第一次尝试使用日期/时间温度数据集。我真的很难理解和赞赏有关以下操作的帮助:

df_f =(2828,6)大小的数据帧。 列标记为='SN','DATE','TIME','TEMP','RH','DP'

我的最终目标是在24小时内绘制温度和DP读数。我在尝试对数据帧中的第0到47行进行分块(对应于24小时)并遍历整个数据帧(df_f)以获取块时遇到了麻烦:[0,47] [48,96],....

以下代码是我尝试过的不同方法。到目前为止,没有尝试。 3似乎可以使用,但是不确定如何进行迭代并用于绘图。

#Code as follows:
import numpy as np        
import pandas as pd        
import glob        

cwd = os.getcwd()        
cwd        

os.chdir("/Users/aamado/Research/Sensor/Temperature Monitoring/Reading 05_11_2020")        
os.listdir('.')        

extension = 'csv'        
all_filenames = [i for i in glob.glob('sensor*.{}'.format(extension))]        

#(*** Note that there are several sensors with a unique dataframe, but only showing df_f here***)

df_f = pd.read_csv('sensor_Fiber_05_11_2020.csv')
df_f.columns = ['SN', 'DATE', 'TIME', 'TEMP', 'RH', 'DP']
print(df_f)

#Attempt no. 1#     
for i in np.arange(0, 2828/47 -1):                
    i = int(i)        
    dfnew2 = [(i*47),(i+1)*47]        
    df_f.append(dfnew2)        
    print(dfnew2)        

#Attempt no. 2#
for i in range(0,len(df_f)):        
    dfnew = df_f.iloc[(i*47) :(i+1)*47 -1]        
    i =int(i)        
    df_f.append(dfnew)        
    print(dfnew)         

#Attempt 3#
chunk = df_f.loc[0:47, 'DATE': 'TEMP']

谢谢!

0 个答案:

没有答案