pandas 按照特定顺序输出的实现代码
df.groupby() 之后按照特定顺序输出,方便后续作图,或者跟其他df对比作图。
## 构造 pd.DataFrame patient_id = ['71835318256532', '87791375711', '66979212649388', '46569922967175', '998612492555522', '982293214194', '89981833848', '17912315786975', '4683495482494', '1484143378533', '56866972273357', '7796319285658', '414462476158336', '449519578512573', '61826664459895'] week = ['tuesday', 'tuesday', 'wednesday', 'monday', 'tuesday', 'monday', 'friday', 'tuesday', 'monday', 'friday', 'saturday', 'thursday', 'wednesday', 'thursday', 'wednesday'] d = {'patient_id': patient_id, 'week':week} test = pd.DataFrame(data=d) ## 聚类计数 test.groupby('week')['patient_id'].count() ## output week friday 2 monday 3 saturday 1 thursday 2 tuesday 4 wednesday 3 Name: patient_id, dtype: int64 ## 按照特定顺序输出 ind = ['monday','tuesday','wednesday','thursday','friday','saturday'] test.groupby('week')['patient_id'].count()[ind] ## output week monday 3 tuesday 4 wednesday 3 thursday 2 friday 2 saturday 1 Name: patient_id, dtype: int64
作图效果如下
test.groupby('week')['patient_id'].count().plot(kind='bar');
ind = ['monday','tuesday','wednesday','thursday','friday','saturday'] test.groupby('week')['patient_id'].count()[ind].plot(kind='bar');
总结
相关推荐
三石 2020-10-30
roamer 2020-10-29
三石 2020-10-29
wangquannuaa 2020-10-15
wangquannuaa 2020-09-29
jzlixiao 2020-09-15
wangquannuaa 2020-08-30
三石 2020-08-23
逍遥友 2020-08-21
jzlixiao 2020-08-18
wangquannuaa 2020-08-17
QianYanDai 2020-08-16
cjsyrwt 2020-08-14
jzlixiao 2020-07-29
xirongxudlut 2020-07-20
mmmjyjy 2020-07-16
QianYanDai 2020-07-05
QianYanDai 2020-07-05
june0 2020-07-04