повысить значение ValueError («длины строк должны совпадать для сравнения») при манипулировании файловой рамкой

Я начинающий python и пишу код, чтобы манипулировать файлом данных, чтобы агрегировать строки, которые лежат между двумя значениями. Значение извлекается из одного из значений в самом кадре данных.

a = df_gb1.loc[0,['TimeStamp']] 

И я использую a и a + 0.4 как две границы, чтобы получить все строки.

 df_gb1[df_gb1['TimeStamp'].between(a-0,a+0.4, inclusive=True)] 

Я не знаю лучшего способа реализовать это, но он все равно дает мне эту ошибку:

ошибка

Как я уже говорил, я очень новичок в python, поэтому я не совсем понимаю, как типы данных работают друг с другом. Кажется, что a сериал.

Как я реализую то, что я пытаюсь сделать?

Я думаю, вам нужно удалить [] только для возвращаемого скаляра a , иначе вывод будет Series :

 df_gb1 = pd.DataFrame({'TimeStamp':[3,3.1,5,7.1,3.4], 'a':[4,5,6,7,8]}) print (df_gb1) TimeStamp a 0 3.0 4 1 3.1 5 2 5.0 6 3 7.1 7 4 3.4 8 a = df_gb1.loc[0,'TimeStamp'] print (a) 3.0 print (df_gb1[df_gb1['TimeStamp'].between(a-0,a+0.4, inclusive=True)]) TimeStamp a 0 3.0 4 1 3.1 5 4 3.4 8 

 print (df_gb1.loc[0,['TimeStamp']]) TimeStamp 3.0 Name: 0, dtype: float64