@stepan_potapov
Аналитик данных

Как отфильтровать массив столбца датафрейма Pandas без выноса их в отдельный столбец?

Например есть такой столбец:

userID   goalsID
25         [1,2,4,5]
188        [3,6]
79         [1,9]


Можно ли отфильтровать данные прямо в массиве, например только по цифре 3? Без выноса каждого значения столбца goalsID в отдельные столбы.
Чтобы осталось вот так:

userID   goalsID
188       [3,6]
  • Вопрос задан
  • 83 просмотра
Пригласить эксперта
Ответы на вопрос 2
Maksim_64
@Maksim_64
Data Analyst
Решений миллион.
1. написать функцию для работы с питон списком, которая будет будет возвращать, True,False.
2. Применить один из многочисленных методов фильтрации.

Например
df = pd.DataFrame({
    'userID':[25,188,79],   
    'goalsID':[[1,2,4,5],[3,6],[1,9]]
})
(
    df.loc[lambda x:x['goalsID'].apply(lambda x: 3 in x)]
)
Ответ написан
mayton2019
@mayton2019
Bigdata Engineer
Напиши на Python функцию которая на вход принимает твой массив и на выходе тоже выдает массив.

Потом у датафрейма есть метод apply() который твою функцию применяет.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы