#python #dataframe #matplotlib #seaborn
#python #фрейм данных #matplotlib #seaborn
Вопрос:
df в моей программе представляет собой фрейм данных с этими столбцами :
df.columns
'''output : Index(['lat', 'lng', 'desc', 'zip', 'title', 'timeStamp', 'twp', 'addr', 'e',
'reason'],
dtype='object')'''
Когда я выполняю этот фрагмент кода:
sns.countplot(x = df['reason'], data=df)
# output is the plot below
но если я немного подправлю свой код следующим образом :
p = df['reason'].value_counts()
k = pd.DataFrame({'causes':p.index,'freq':p.values})
sns.countplot(x = k['causes'], data = k)
Итак, по сути, я просто сохранил значения столбца «причины» и его частоты в виде ряда в p, а затем преобразовал их в другой фрейм данных k, но этот новый график подсчета не имеет правильного диапазона оси Y для заданных значений.
Мои сомнения заключаются в :
- Можем ли мы установить ось Y во втором countplot в соответствующих пределах
- Почему второй countplot отличается от первого, когда я просто отделил конкретный столбец, который хотел отобразить, и построил его отдельно?
Комментарии:
1. Вы пытаетесь создать график подсчета уже подсчитанных значений, поэтому каждое значение встречается ровно один раз. Поскольку первый подход работает просто отлично, почему бы его не использовать?
2. Я использовал сам первый, мне просто было любопытно узнать, почему 2 графика подсчета отличаются