如何简化多列数据的str.title()处理?
嗨!恭喜你在StackOverflow发布第一个问题😀,当然有办法简化这段代码啦,给你两种实用的方案,看哪种更适合你的场景:
方案一:批量处理同类型列 + 单独处理新列
如果以后需要转换格式的列越来越多,这种批量处理的方式会更高效:
# 先定义需要转换自身格式的列 cols_to_normalize = ['status', 'type'] # 批量应用str.title() df[cols_to_normalize] = df[cols_to_normalize].apply(lambda col: col.str.title()) # 单独处理name列(从booking_type生成) df['name'] = df['booking_type'].str.title()
方案二:用assign()一次性完成所有操作
这种方式把所有列的修改/生成操作集中在一起,可读性更强,也符合pandas的链式操作习惯:
df = df.assign( name=df['booking_type'].str.title(), status=df['status'].str.title(), type=df['type'].str.title() )
小提示:如果这些列里存在缺失值(NaN),str.title()会自动保留NaN,不需要额外做处理哦~
内容的提问来源于stack exchange,提问作者Bagus Ganjar Lugina
相关产品推荐
相关产品推荐

