Python 尝试基于最高频率创建子集
我有以下数据集:Python 尝试基于最高频率创建子集,python,pandas,Python,Pandas,我有以下数据集: df = pd.DataFrame() df['fruit'] = ['apple','pear','banana','banana','pear','banana','apple','apple','pear','apple','apple','apple'] df['price'] = [2,1,3,3,1,3.3,1.8,1.8,1,1.6,1.6,1.6] df['date_buy'] = ['01/01/2005','01/01/2005','01/01/2005',
df = pd.DataFrame()
df['fruit'] = ['apple','pear','banana','banana','pear','banana','apple','apple','pear','apple','apple','apple']
df['price'] = [2,1,3,3,1,3.3,1.8,1.8,1,1.6,1.6,1.6]
df['date_buy'] = ['01/01/2005','01/01/2005','01/01/2005','01/01/2005','01/02/2005','01/02/2005','01/02/2005','01/02/2005','01/03/2005','01/03/2005','01/03/2005','01/03/2005']
df.date_buy = df.date_buy.astype('datetime64')
df.set_index('date_buy', inplace = True)
pivot_df = df.pivot_table(index=['date_buy'],columns = ['fruit'], values = ['price'], aggfunc = sum).\
fillna(0).resample('D', level=0).sum()
price
fruit apple banana pear
date_buy
2005-01-01 2.0 6.0 1.0
2005-01-02 3.6 3.3 1.0
2005-01-03 4.8 0.0 1.0
我想对pivot_df上的一些列进行子集,pivot_df是价格总和的底部两个。在这种情况下,应为梨(总数3)和香蕉(总数9.3)
非常感谢您的帮助。让我们试试:
过滤的
:
price
fruit pear banana
date_buy
2005-01-01 1.0 6.0
2005-01-02 1.0 3.3
2005-01-03 1.0 0.0
让我们试试:
过滤的
:
price
fruit pear banana
date_buy
2005-01-01 1.0 6.0
2005-01-02 1.0 3.3
2005-01-03 1.0 0.0
而且它也可以使用NLAGEST,谢谢@Henry Ecker,我很感激能让我进行更多调查的答案!而且它也可以使用NLAGEST,谢谢@Henry Ecker,我很感激能让我进行更多调查的答案!
price
fruit pear banana
date_buy
2005-01-01 1.0 6.0
2005-01-02 1.0 3.3
2005-01-03 1.0 0.0