"Ни один из [Float64Index ([56.0, .. \ n dtype = 'float64', length = 1057499)]] не находится в [столбцах]" Pandas фрейм данных - PullRequest
0 голосов
/ 05 февраля 2020

Пожалуйста, извините за любые очевидные ошибки, так как я новичок в Pandas и кодировании в целом.

Я фильтрую исходный фрейм данных и создаю копию с выбранными столбцами. Вот как выглядит мой фрейм данных:

(подпрограмма фильтра фрейма данных):

df_new=df.filter(['date','location','value','lat_final','lon_final'], axis=1)
df_new = df_new.set_index('date')
print (df_new.head())

Новый фрейм данных:

    location  value lat_final lon_final
date                                                              
2015-06-30 09:40:00+05:30   XYZI   56.0   28.6508   77.3152
2015-06-30 11:00:00+05:30   MNOP   36.0   28.6683   77.1167
2015-06-30 17:10:00+05:30   QRST   71.0   28.6508   77.3152
2015-06-30 11:00:00+05:30   UVWX   98.0   28.6508   77.3152
2015-06-30 09:40:00+05:30   XXYZ   26.0   28.6683   77.1167

При попытке выполнить некоторые операции над столбцы в этом новом фрейме данных, я получаю ошибку без типа. Вот операции, которые я выполняю:

(этот шаг идет нормально)

f=df_new[df_new['value']>=0]
f.drop(f[f['value'] >1500].index, inplace = True)
f.drop(f[f['value'] <2].index, inplace = True)

(здесь появляется ошибка):

#Filteration steps:
#Step1: grouping into 12h or n hour intervals:
diurnal = f[f['value']].resample('12h')

Куда я иду неправильно? Любая помощь будет высоко ценится.

1 Ответ

1 голос
/ 05 февраля 2020

Это: f[f['value']] выдаст вам ошибку. Если вы хотите пересчитать столбец value, вы должны правильно выбрать его, а также сообщить resample, как вы хотите агрегировать значения (сумма, среднее?). Как то так:

f['value'].resample('12h').sum()
...