#python #pandas #dataframe
#python #pandas #фрейм данных
Вопрос:
У меня есть фрейм данных pandas, который выглядит следующим образом:
Я хотел бы сгенерировать количество экземпляров ‘x’ (независимо от того, уникальны они или нет) для каждого ‘id’. Результатом будет вставка в виде столбца с надписью «x_count», как показано ниже:
Любые советы были бы полезны.
Ответ №1:
Просто groupby с преобразованием count
df['x_count'] = df.groupby('id')['x'].transform('count')
Если вы также хотите посчитать NaN
, используйте `size’
df['x_count'] = df.groupby('id')['x'].transform('size')
Ответ №2:
Попробуйте .value_counts
с .map
df['x_count'] = df['id'].map(df.value_counts('id'))