【问题标题】:How to simplify the `str.title()` at multiple columns?如何简化多列的`str.title()`?
【发布时间】:2022-08-09 22:58:11
【问题描述】:

这是我在 StackOverflow 上的第一个问题。

拜托,有人可以帮我解释一下是否有任何方法可以同时在多个列中使用str.title() 简化代码?

这是我的代码:

df[\'name\'] = df[\'booking_type\'].str.title()
df[\'status\'] = df[\'status\'].str.title()
df[\'type\'] = df[\'type\'].str.title()

谢谢!

    标签: python dataframe


    【解决方案1】:

    Series.str 函数仅是系列,因此没有很好的方法将它们同时应用于多个列。

    最有效的可能只是将它们放在 for 循环中。如果您真的想要,您可以使用applymap 将函数应用于所有单元格,但这可能比基于列的方法慢。

    for col in ('name', 'status', 'type'):
        df[col] = df[col].str.title()
    # OR
    df[['name', 'status', 'type']] = df[['name', 'status', 'type']].applymap(str.title)
    

    【讨论】:

      猜你喜欢
      • 2017-10-09
      • 2013-11-25
      • 2020-04-10
      • 2012-05-27
      • 1970-01-01
      • 1970-01-01
      • 2020-03-15
      • 2020-07-14
      • 1970-01-01
      相关资源
      最近更新 更多