당신의 데이터를 전송하는 편이 더 좋습니다 :
(참고, 모든 데이터 유형과 같은, 수레하지만, 거기에 약간의 NaN을 가진, 나는 정면 보통의 물건을 포함했다 seaborn을 사용할 때 long-form (일반적으로). 예외적으로 히트 맵을 사용하려면 깨끗한 2 변수 테이블이나 매트릭스로 피벗해야합니다.
어쨌든 긴 형태로 볼 때, 각 행은 정확하게 하나의 관측치를 가지며, 지원하는 기능은이 행에 대한 추가 열입니다. 특정 경우에, 각 행에는 여러 관측치가 있습니다 (각 y에 대해 1 개 회사와 측정 기준을 고려하면 귀중한 것입니다.) 그래서 우리는 이것을 장기적인 형식으로 변환하고 싶습니다.이 형식은 당신의 관찰의 또 다른 특징 일뿐입니다. 다행히도 pnd.melt
은 정확한 목적을 위해 작성되었습니다.
의가 당신을 기반으로, 일반적인 pnd.DataFrame
시작하자 : 긴 형식으로 변환
In [1]: import pandas as pnd
In [2]: import seaborn as sns
In [3]: df = DataFrame.from_dict({
...: 'company': ['A', 'B', 'A', 'B', 'C'],
...: 'metric': ['SG', 'SG', 'RG', 'RG', 'SG'],
...: '2005': [1, 2, 3, 4, 5],
...: '2006': [4, 5, 6, 7, 8]})
In [4]: df
Out[4]:
2005 2006 company metric
0 1 4 A SG
1 2 5 B SG
2 3 6 A RG
3 4 7 B RG
4 5 8 C SG
이 pnd.melt
를 사용하여 :
In [5]: df_melt = pnd.melt(df,
id_vars=['company', 'metric'],
value_vars=['2005', '2006'],
var_name='year',
value_name='value')
In [6]: df_melt
Out[6]:
company metric year value
0 A SG 2005 1
1 B SG 2005 2
2 A RG 2005 3
3 B RG 2005 4
4 C SG 2005 5
5 A SG 2006 4
6 B SG 2006 5
7 A RG 2006 6
8 B RG 2006 7
9 C SG 2006 8
그리고 마지막으로 sns.factorplot
와 당신이 X 같은 매개 변수를 사용할 수있다을 , 색조, 행, 열을 사용하여 요소 분해를 수행하여 데이터를 시각화합니다.
In [7]: sns.factorplot(data=df_melt,
x='year',
y='value',
hue='metric',
col='company')
Out[7]: <seaborn.axisgrid.FacetGrid at 0x7f6286fee890>
In [8]: from matplotlib import pyplot as plt
In [9]: plt.show()

피터 - 도와 주셔서 대단히 감사드립니다. 나는 이것을 읽고 당신의지도를 따를 것입니다. 이 지역 사회에 처음 왔기 때문에 나는 이방인들의 친절함에 정말로 감사드립니다. 다시 한번 감사드립니다. – NickP
걱정하지 말고 도와주세요. 행운을 빈다. – peterfields