У меня есть следующий фрейм данных:
df=pd.DataFrame({'ssn':[12345,54321,111,47895,222311],'Name':['john','mike','adam','doug','liz']})
DataFrame содержит 'ssn', который должен содержать только 5 цифр. Я хочу заменить все строки, содержащие менее 5 цифр, пробелами.
Требуемый вывод указан ниже:
Name ssn
0 john 12345
1 mike 54321
2 adam
3 doug 47895
4 liz
Я сослался на следующий пост из SO заменить строку, если длина меньше x
Однако при использовании того же решения со следующими командами выдает ошибку:
mask = df['ssn'].str.len() == 5
df['ssn'] = df['ssn'].mask(mask, df['ssn'].str.replace(df['ssn'], ''))
Traceback (most recent call last):
TypeError: 'Series' objects are mutable, thus they cannot be hashed
Буду признателен за любые предложения.