Я хочу удалить категории с числом 0 после pandas value_counts function ()
Мои данные следующие:
categories:
Index(['Average', 'Good', 'Poor', ,'VeryGood', 'VeryPoor'],
dtype='object')
Output of value counts:
score Frequency
VG 21
G 15
A 63
P 27
VP 0
Мой результат должен быть как
score Frequency
VG 21
G 15
A 63
P 27
Я хочу сохранить это в кадре данных и построить гистограмму этого. Я не хочу показывать VP на графике, так как его количество равно 0 и, следовательно, исключить эту категорию
Мой код:
quality_scores=quality.SCORE.value_counts()
quality_scores=pd.Series.to_frame(quality_scores)
quality_scores=quality_scores.rename(columns={'SCORE':
'Frequency'})
quality_scores['Score']=quality_scores.index
quality_scores=quality_scores.reset_index(drop=True)
quality_scores = quality_scores[quality_scores.Frequency != 0]
quality_scores
Я редактирую ответ на основании комментариев:
Я получил правильные ответы при печати кадра данных. Однако, когда я проверяю категории с помощью quality_scores ['Score']. Cat.categories, я все равно вижу категорию VP, которая не должна отображаться.
Кроме того, на графике я не ожидаю увидеть категорию VP, но она отображается на оси.
Ниже приведен код для графика:
plt.figure(figsize=(15,7))
quality_graph=sns.barplot(y=quality_scores["Frequency"],
x=quality_scores["Score"])
quality_graph.set_xlabel('Frequency')
quality_graph.set_title('Score Distribution of Quality
Measure:',fontsize=25)
plt.savefig('graphs\\Quality_Measure.png')
Если вы видите, на графике много пустых категорий. На самом деле этого нет в кадре данных quality_scores.