Como traçar a distribuição dos valores das colunas no pandas
Você pode usar os seguintes métodos para traçar uma distribuição de valores de coluna em um DataFrame do pandas:
Método 1: traçar a distribuição de valores em uma coluna
df[' my_column ']. plot (kind=' kde ')
Método 2: traçar a distribuição dos valores em uma coluna, agrupados por outra coluna
df. groupby (' group_column ')[' values_column ']. plot (kind=' kde ')
Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'], ' points ': [3, 3, 4, 5, 4, 7, 7, 7, 10, 11, 8, 7, 8, 9, 12, 12, 12, 14, 15, 17]}) #view DataFrame print (df) team points 0 to 3 1 to 3 2 to 4 3 to 5 4 to 4 5 TO 7 6 to 7 7 to 7 8 to 10 9 to 11 10 B 8 11 B 7 12 B 8 13 B 9 14 B 12 15 B 12 16 B 12 17 B 14 18 B 15 19 B 17
Exemplo 1: Trace a distribuição de valores em uma coluna
O código a seguir mostra como traçar a distribuição de valores na coluna de pontos :
#plot distribution of values in points column df[' points ']. plot (kind=' kde ')
Observe que kind=’kde’ diz ao pandas para usar a estimativa de densidade do kernel , que produz uma curva suave que resume a distribuição dos valores de uma variável.
Se você quiser criar um histograma, poderá especificar kind=’hist’ da seguinte maneira:
#plot distribution of values in points column using histogram df[' points ']. plot (kind=' hist ', edgecolor=' black ')
Este método utiliza barras para representar as frequências dos valores na coluna de pontos , em oposição a uma linha suave que resume a forma da distribuição.
Exemplo 2: Trace a distribuição dos valores em uma coluna, agrupados por outra coluna
O código a seguir mostra como traçar a distribuição dos valores na coluna de pontos , agrupados pela coluna equipe :
import matplotlib.pyplot as plt #plot distribution of points by team df. groupby (' team ')[' points ']. plot (kind=' kde ') #add legend plt. legend ([' A ',' B '], title=' Team ') #add x-axis label plt. xlabel (' Points ')
A linha azul mostra a distribuição de pontos dos jogadores da equipe A enquanto a linha laranja mostra a distribuição de pontos dos jogadores da equipe B.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:
Como adicionar títulos aos gráficos no Pandas
Como ajustar o tamanho da figura de um gráfico de panda
Como plotar vários DataFrames do Pandas em subparcelas
Como criar e personalizar legendas de plotagem em Pandas