【问题标题】:Calculate duration in years for multiple variables in a column计算列中多个变量的持续时间(以年为单位)
【发布时间】:2023-02-05 03:27:08
【问题描述】:

我正在尝试计算每家商店的营业时间。这是数据集的示例:

year store name
2000 Store A
2001 Store A
2002 Store A
2003 Store A
2000 Store B
2001 Store B
2002 Store B
2000 Store C

我不确定如何计算每个商店名称的最大和最小年份的差异,因为它们都在同一列中。我是否使用熊猫将其放入新专栏?

【问题讨论】:

    标签: python pandas date duration


    【解决方案1】:

    您需要使用 groupby:

    g = df.groupby('store name')['year']
    
    out = g.max()-g.min()
    

    【讨论】:

      【解决方案2】:

      您可以使用 groupby 和 transform 在同一数据框中创建一个附加列。

      df["years open"] = df.groupby("store name")["year"].transform(lambda x: x.max()-x.min())
      

      【讨论】:

        猜你喜欢
        • 2014-02-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-22
        • 2019-01-07
        • 2016-06-03
        相关资源
        最近更新 更多