#python #pandas
#python #pandas
Вопрос:
У меня есть такой фрейм данных df
:
values
0 [0,1]
1 [1,2]
2 [2,3]
3 [3,4]
4 [4,5]
Что-то вроде этого не работает:
df[df['values'] == [0,1]]
Я получаю:
ValueError: 'Lengths must match to compare', (5,), (2,)
Как я могу получить строку с учетом list
сохраненной в этой строке?
Комментарии:
1. что именно
a
здесь?2. Я намеревался сказать что-то общее, например, строку, число и т. Д
3. это список или одно из значений в списке, приведите пример.
4. хорошо, приведен пример
5.
df[df['values'] == '[0,1]']
Находятся ли ячейки в формате списка? Почему бы вам не попробовать поиск по строке?
Ответ №1:
Используйте понимание списка:
[i == [0,1] for i in df['values']]
Вот так:
df[[i == [0,1] for i in df['values']]]
Вывод:
values
0 [0, 1]
Ответ №2:
df.loc[(df['values'].apply(pd.Series) == [0,1]).all(axis=1)]