Иметь DF med562. Категориальная переменная имеет распределение ниже
I 6119923
O 764905
166666
Name: IND, dtype: int64
Хотите просто вписать 166666 пропущенных значений, используя значение I, с 6119923 строками. Написал это
med562['IND']=med562['IND'].fillna(value='I')
Catcounts=med562.IND.value_counts(dropna=False)
Catcounts
Он не изменился, все тот же дистрибутив. Это работает на Python 3.7.3. Не должно быть проблем с программным обеспечением. Любая мысль? Спасибо.
Это не NaN
, это пробел, если это NaN
, когда вы делаете value_counts
, это не будет отображаться в результате, так как dropna=True
в value_counts
по умолчанию установлено значение True
med562['IND']=med562['IND'].replace({'':'I'})
Catcounts=med562.IND.value_counts(dropna=False)
@opt135 med562['IND'].str.strip().replace({'':'I'})
Видеть. str.strip() сжимает все, что находится между ' ', чтобы соответствовать более позднему [{'',]
@ opt135 opt135 да, однако, это то, что вам нужно?
Спасибо, это работает, только если между '' нет пробела. Но как определить, сколько пробелов в исходных данных? В этом случае у меня сначала по привычке был пробел между ''нравится''. Это не работает. Таким образом, я выжал любое пространство между ними. Оно работает. Спасибо. Это действительно помогает.