剥离/修剪数据框的所有字符串
发布于 2021-01-29 19:26:22
清理python / pandas中的多类型数据框的值后,我要修剪字符串。我目前正在执行两条指令:
import pandas as pd
df = pd.DataFrame([[' a ', 10], [' c ', 5]])
df.replace('^\s+', '', regex=True, inplace=True) #front
df.replace('\s+$', '', regex=True, inplace=True) #end
df.values
这很慢,我可以改善什么?
关注者
0
被浏览
53
1 个回答
-
您可以使用
DataFrame.select_dtypes
选择string
列,然后apply
运行str.strip
。注意:值不能
types
像dicts
或lists
,因为它们dtypes
是object
。df_obj = df.select_dtypes(['object']) print (df_obj) 0 a 1 c df[df_obj.columns] = df_obj.apply(lambda x: x.str.strip()) print (df) 0 1 0 a 10 1 c 5
但是,如果只有几列,请使用
str.strip
:df[0] = df[0].str.strip()