for name,sub_group in op_train.groupby('UID'):
if sub_group['geo_code'].value_counts().isnull().any():
sub_group['geo_code'].fillna(-1,inplace=True)
else: sub_group['geo_code'].fillna(sub_group['geo_code'].value_counts[:1],inplace=True)
Я хочу сгруппировать по имени пользователя, а затем сосчитать атрибут geo_code
имени пользователя.Если он пуст, заполните атрибут -1, в противном случае он будет заполнен наиболее часто встречающимся значением этого столбца, но я обнаружил, что после этого эффекта нет.Я не знаю почему.
Кроме того, если я заменим value_counts[:1]
на index[0]
, он вернет ошибку, IndexError: index 0 is out of bounds for axis 0 with size 0
.Кто-нибудь может мне помочь?