我有一个只包含人、年龄和想用matplotlib制作条形图的数据。为了做到这一点,我想将年龄列中的数据组织成0-4,5-9等组。如何通过将年龄分组来制作一个条形图?
发布于 2022-05-02 03:34:15
您可以首先为每个年龄组分配一个数值,使其成为数据中的一个新列,然后使用它来绘制一个海运countplot
。我使用的是countplot
而不是barplot,因为我假设您想要绘制图中每个组的计数,而对于此,计数图是最有效的方法。如果没有,那就让我知道。
np.random.seed(42)
ages = [np.random.randint(0, 80) for _ in range(10000)]
df = pd.DataFrame(ages, columns = ["Age"])
age_groups = [range(age, age + 5) for age in range(0, 80, 5)]
age_group = []
for age in ages:
for i, group in enumerate(age_groups):
if age in group:
age_group.append(i)
break
中的一个新列。
df["Age Group"] = age_group
countplot
-import seaborn as sns
plt.figure(figsize = (20,5))
sns.countplot(x = "Age Group", data = df)
plt.show()
产出-
https://stackoverflow.com/questions/72081905
复制相似问题