此代码正常运行但不是我想要的方式:
vor_merged_to_dad_pivot = pd.pivot_table(
vor_merged_to_dad,
index=['ID'],
values=['MDD_Y', 'ADMITDATE'],
aggfunc={
'MDD_Y':np.sum,
'ADMITDATE':np.min
}
)
我想获得最小的ADMITDATE,但只有当MDD_Y等于1时,我才尝试这个但是没有工作:
vor_merged_to_dad_pivot = pd.pivot_table(
vor_merged_to_dad,
index=['ID'],
values=['MDD_Y', 'ADMITDATE'],
aggfunc={
'MDD_Y':np.sum,
'ADMITDATE':np.min if 'MDD_Y'==1
}
)
SyntaxError: invalid syntax
答案 0 :(得分:1)
解决此问题的一种方法是添加辅助列:
getMeAPDF(){
this.apiService.getMeMyPDF().subscribe(res => {
if(res !== null && res !== undefined){
this.saveToFileSystem(res.body);
}
}, (error) => console.log(error), () => {});
}
private saveToFileSystem(response) {
const blob = new Blob([response], { type: 'text/pdf' });
const d = new Date();
saveAs(blob, 'WOWPDF_' + this._datepipe.transform(d, 'yyyyMMdd_HHmmss') + '.pdf');
}
然后在max_value = vor_merged_to_dad['ADMITDATE'].max()
vor_merged_to_dad['ADMITDATE2'] = np.where(vor_merged_to_dad['MDD_Y_DAD'] == 1,
vor_merged_to_dad['ADMITDATE'], max_value)
聚合中使用“ADMITDATE2”。