Как посчитать количество вхождений (value_counts) в Pandas по второму элементу списка из аттрибута?

Рейтинг: 1Ответов: 1Опубликовано: 23.01.2023

Имеется Pandas DataFrame, состоящий из одного аттрибута, где каждое значение - список из двух элементов. Как можно применить функцию value_counts() к каждому второму значению списка элементов? То-есть я хочу узнать сколько одинаковых фамилий присутствует в наборе данных.

Подскажите, пожалуйста. Срезы разные пробовал, функции строк, не получается.

введите сюда описание изображения

Ответы

▲ 2

Можно c помощью pandas.Series.str.get "извлечь элемент из списков, кортежей, dict или строк в каждом элементе в серии/индексе". Полная запись - .str.get(i), сокращенная .str[i].

df = pd.DataFrame({'name': [['John','Smith'],['Sarah','Connor'],['John','Connor']]})
print(df.name.str[1].value_counts())
Connor    2
Smith     1
Name: name, dtype: int64