У меня есть значения в некотором столбце (ненулевой объект) с символом "%", например
col1 col2 col3
'4.24%' '5.22%' 8
Но я хочу 4.24 и 5.22 в качестве числа с плавающей точкой.
I have tried with:
for el in df.columns:
if df[el].str.contains('%').any():
df[el] = df[el].str.strip("%").astype(float)
И сказал: AttributeError: Can only use .str accessor with string values, which use np.object_ dtype in pandas
, если я использую:
if df['col1'].str.contains('%').any():
df['col1'] = df['col1'].str.strip("%").astype(float)
, то отлично работает.Но с итерацией по всему столбцу не работает.
Любая помощь приветствуется.