でデータを運ぶために一般的に優れている:
(注、すべてのデータ型は、次のような、浮動小数点数ですが、そこにいくつかのNaNを持つ、と私はアップフロント通常のものが含まれていますシーボーンを使用するときは長い形である(一般的に)。例外的にヒートマップを使用する場合は、クリーンな2変数テーブルまたはマトリックスにピボットする必要があります。
とにかく長い形式では、各行はちょうど1つの観測値を持ち、サポート機能はこれらの行の単なる追加の列です。特定の場合、各行にはいくつかの観測値があります(y耳、会社と指標を考慮して)、これを長形に変換したいと思います。ここでは、年は単にあなたの観察のもう一つの特徴です。幸いにも、その正確な目的のために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
を使用して長い形式への変換:
sns.factorplot
と
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
そして最後に、あなたは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