我知道这是非常简单的,但我不知道如何做到这一点,因为我不经常绘图,这让我头疼。我有两个特别的问题:
1 º假设我有一个 Dataframe (或者说数组)的一列,其中包含一个分类(对象)变量,我想制作一个条形图,其中包含的观察值的数量与条形图的标签不同,例如,如果我有一个 Dataframe ,其中的列名为color,我想制作这样的条形图。
COLOR
0 green
1 red
2 green
3 yellow
4 pink
5 red
6 blue
First Question
第二个问题是我有一个数据集,它有很多行和一些标签,我对其中的两个感兴趣。我想画一个条形图(以下面所示的两种方式中的任何一种),它将满足属于第一个标签的特定类的行数除以第二个标签的类。例如,如果在组A中有' s 160行,其中每40如果也为系列1,我希望它绘制如下。
Group Series
0 Group A Series 2
1 Group B Series 1
2 Group B Series 5
3 Group A Series 4
0 Group A Series 1
1 Group B Series 3
2 Group B Series 3
3 Group A Series 2
Second Question
我还想知道,是否有任何函数,在给定两个标号的情况下,告诉我第二列中每个标号的百分比,属于第一列中的任何一个,就像第二个问题一样,但我希望它是数字化的,输出如下
Group A : 23% Series 1, 15% Series 2, 11% Series 3...
Group B: 27% Series 1, 11% Series 2, 10% Series 3...
我知道一定有直接的函数,但由于我不习惯python的数据/绘图部分,我不知道它们,我正在努力寻找它们。
1条答案
按热度按时间omjgkv6w1#
对于第一个问题,可以使用海运函数countplot,该函数专门用于分类值,如颜色标签。
seaborn's function countplot
对于你的第二个问题,你可以使用panda函数crosstab:
series =[“系列2”,“系列1”,“系列5”,“系列4”,“系列1”,“系列3 ","系列3”,“系列2”] df = pd.数据框(列表(zip(组,系列)),列=[“组”,“系列”])
crosstab can give you the desired percentages