2016-05-09 3 views
2

Pandasで気象データを再サンプリングしようとしています。元のデータは約5分間隔です。最終的に、5分、15分、1時間の間隔でデータを再サンプリングして、別々のExcelファイルをエクスポートしたいと考えています。Pandasのデータを再サンプリングするときに問題が発生する

私が正常にdatetime型の指標として「時間」列を設定しているが、私はリサンプリングしようとすると、私は入れません

:私もコンバータと、元のエクセルファイルをインポートしようとしている

を「DataErrorない数値型を集約します」 = { 'TemperatureF':int型...など

#Open Excel File With Original Timestamps 
xlsx = pd.ExcelFile('IDLWeaterData_OriginalTime.xlsx') 
df = pd.read_excel(xlsx) 
print ('File read successfully') 

# Set 'Time' Column as dataframe index 
df.set_index(pd.DatetimeIndex(pd.to_datetime(df.Time)), inplace=True) 
df.drop(['Time'],axis=1) 

#Resample to 5 minute intervals 
clean5 = df.resample('5min').mean() 

素晴らしいことだ、この問題を引き起こしているものに任意の洞察力!ありがとう!ここで

は、データのサンプルです:

    TemperatureF DewpointF PressureIn Humidity HourlyPrecipIn dailyrainin SolarRadiationWatts/m^2 
2016-01-01 00:04:00 31.9 22.2 30.51 67 0.00 0.00 0 
2016-01-01 00:10:00 32.2 22.5 30.52 67 0.00 0.00 0 
2016-01-01 00:16:00 32.5 23.1 30.51 68 0.00 0.00 0 
+0

を '、あなたのデータフレーム内のすべての列のDTYPEを見ることができますdf.dtypes'。どうやら数字の列はありません。 – ayhan

+0

@ayhan df.dtypesは、インデックスを除いてすべてのオブジェクトを返しています。 – WheninSeattle

+0

@Alexander整数(風向など)を含まないすべての列を削除しました。 – WheninSeattle

答えて

2

これはあなたのデータで何が起こっているかです。

enter image description here

それを修正するには、次のと

>>> df[df.Time.notnull()].set_index('Time').astype(float).resample('5min') 
       TemperatureF DewpointF PressureIn Humidity HourlyPrecipIn 

dailyrainin SolarRadiationWatts/m^2 
Time                              
2016-01-01 00:00:00   31.9  22.20  30.51  67    0   0      0 
2016-01-01 00:05:00   NaN  NaN   NaN  NaN    NaN   NaN      NaN 
2016-01-01 00:10:00   32.2  22.50  30.52  67    0   0      0 
2016-01-01 00:15:00   32.5  23.10  30.51  68    0   0      0 
2016-01-01 00:20:00   32.5  22.80  30.52  67    0   0      0 
... 
+0

にアップロードしました。 。振り返ってみるとシンプルで明快です。問題を特定していただきありがとうございます。有益な提案をした他の人に、問題の不完全な描写を提供することによって誰かを迷子に導くための私の謝罪。 – WheninSeattle

関連する問題