【问题标题】:Python/Pandas - Rearrange string from column valuePython/Pandas - 从列值重新排列字符串
【发布时间】:2020-02-12 10:26:54
【问题描述】:

我需要重新排列 column: "Quarter" 上的列值。预期输出应如列中所示:“new_Quarter”

我使用以下代码从列:“日期”中获得了列:“季度”

df['Quarter'] = pd.PeriodIndex(df['Date'], freq='Q')

我尝试使用以下代码获取目标列:“new_Quarter”,但出现错误

df['new_Quarter'] = q['Quarter'].str.slice(4,6) + ' ' + q['Quarter'].str.slice(2,4)

TypeError: ufunc 'add' 不包含签名匹配类型 dtype('

的循环

【问题讨论】:

    标签: python pandas date


    【解决方案1】:

    您可以使用strftime

    df['new_Quarter'] = df.Quarter.dt.strftime('Q%q %y')
    

    附带说明一下,Quarter 列也可以使用 to_period 简单地创建

    df['Quarter'] = df.Date.dt.to_period('Q')
    

            Date Quarter new_Quarter
    0 2019-09-18  2019Q3       Q3 19
    1 2019-03-18  2019Q1       Q1 19
    2 2019-05-13  2019Q2       Q2 19
    

    【讨论】:

      猜你喜欢
      • 2021-03-17
      • 1970-01-01
      • 1970-01-01
      • 2020-02-18
      • 2019-11-23
      • 1970-01-01
      • 2020-12-28
      • 2021-05-26
      • 1970-01-01
      相关资源
      最近更新 更多