【问题标题】:Add column with tuple length (number of items)添加具有元组长度的列(项目数)
【发布时间】:2015-11-13 10:31:13
【问题描述】:

原始 DataFrame 只是 1 列的元组。我想添加一列,其中包含每个元组中的项目数(长度)。

           ITEMS
0   (EGG, WATER, TOMATOE)
1   (MILK, EGG)
2   (CHOPSTICKS)

df['NUM_ITEMS'] = df.ITEMS.len(): 不工作

df['NUM_ITEMS'] = df.ITEMS.count():添加一列,其中包含DataFrame中的总行数

我使用df['NUM_ITEMS'] = df.ITEMS.astype(str).str.count('\', \'') + 1,但我想这不是最好的方法。我确定有直接的方法可以做到,但我看不到。

最终数据集:

           ITEMS            NUM_ITEMS
0   (EGG, WATER, TOMATOE)      3
1   (MILK, EGG)                2
2   (CHOPSTICKS)               1

有什么想法吗?

谢谢!

【问题讨论】:

    标签: python pandas tuples dataframe


    【解决方案1】:

    调用apply 并传递函数len:

    In [392]:
    df['NUM_ITEMS'] = df['ITEMS'].apply(len)
    df
    
    Out[392]:
                       ITEMS  NUM_ITEMS
    0  (EGG, WATER, TOMATOE)          3
    1            (MILK, EGG)          2
    2          (CHOPSTICKS)           1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多