【发布时间】:2017-07-19 08:11:12
【问题描述】:
我有以下例子:
index_ = pd.date_range('2001-01-01', '2010-12-31', freq = 'MS')
df_ = pd.DataFrame(np.random.randn(len(index_), 4), columns=list('ABCD'), index = index_ )
df_.loc['2009-01-01','A'] = np.nan
df_.loc['2007-08-01','B'] = np.nan
df_.groupby(pd.TimeGrouper('A')).agg({'A': np.sum, 'B': np.mean})
我希望 2007 年的“B”列是 NaN,2009 年的“A”列是 NaN。如何实现?我尝试了 np.sum 函数,因为在 numpy 数组中,当数组包含 nan 值时它返回 NaN。这可以翻译成我想在这里使用的“agg”命令吗?
【问题讨论】: