pandas数据帧中字符串的出现次数

时间:2018-04-12 17:31:32

标签: python pandas dataframe

我必须对数据帧上的总数进行计数和求和,但条件为:

fruit days_old
apple 4
apple 5
orange 1
orange 5

我必须指望水果超过3天的条件。所以我需要的输出是

2个苹果和1个橙色

我以为我必须使用apply函数,但我必须将每个水果类型保存到变量或其他东西。我确信这是一种更简单的方法。

PS。我一直在寻找,但我没有看到一个明确的方法来创建适当间距的表格。唯一明确的是不要复制和粘贴标签!

4 个答案:

答案 0 :(得分:3)

一种方法是使用documentation

res = df.loc[df['days_old'] > 3, 'fruit'].value_counts()

# apple     2
# orange    1
# Name: fruit, dtype: int64

使用pd.DataFrame.apply是不可取的,因为这会导致循环效率低下。

答案 1 :(得分:3)

您可以使用This

 Navigation.PushAsync (new Page2Xaml (), false);

答案 2 :(得分:3)

我想参加变异派对。

AIRBUS BOEING EMBRAER 2002 18 21 30 2003 20 23 31 2004 23 26 29 2005 22 25 26 2006 22 25 25 2007 22 27 17 2008 21 21 16 2009 17 19 22 2010 14 22 24 2011 17 27 22 2012 16 22 19 2013 11 24 19 + pd.factorize

np.bincount

答案 3 :(得分:2)

@jpp和@chrisz描述的value_counts()方法很棒。要发布其他策略,您可以使用groupby

df[df.days_old > 3].groupby('fruit').size()

# fruit
# apple     2
# orange    1
# dtype: int64