Как определить переменную в matpotlib при создании гистограммы

#python #pandas #numpy #matplotlib #histogram

#python #панды #numpy #matplotlib #гистограмма

Вопрос:

Я пытаюсь создать гистограмму из файла CSV, используя возраст и пол. Проблема в том, что пол имеет 3 значения (мужской, женский и неизвестный). Я хочу использовать только мужчин и женщин с их номером записи по возрасту. Мой код:

 #plt.figure(figsize=[10,8])
gender = data_dict['Gender']
age = data_dict['Age']
legend = ['Male', 'Female']

plt.hist([age, gender], color = ['red','blue'], bins = 10, edgecolor = 'black')
plt.xticks(range(15, 80))
plt.yticks(range(57, 66309))
plt.legend(legend)

plt.title('Age of Accident Victims')
plt.xlabel('Ages')
plt.ylabel('Record Number')
plt.show()
  

Ось Y полностью перепутана

Заранее спасибо. Приветствия

Комментарии:

1. чтобы визуализировать вашу проблему, было бы лучше, если бы вы добавили только график, без части кода на изображении

Ответ №1:

Это невозможно сделать непосредственно из функции matplotlib, но вы можете легко удалить точки данных, которые вас не интересуют, перед выполнением гистограммы. Например:

 gender_clean = []
age_clean = []
for gender_point, age_point in zip(gender, age):
    if gender_point != 'Unknown':
        gender_clean.append(gender_point)
        age_clean.append(age_point)
  

Или с помощью numpy:

 import numpy as np
age = np.array(age)[np.array(gender) != 'Unknown']
gender = np.array(gender)[np.array(gender) != 'Unknown']