2016-05-06 12 views
1

CSVファイルに、ここではの4番目の例のようなSwarmplotでプロットするデータがあります。つまり、グループを表す色です。 CSVでSeaborn swarmplotの正しいフォーマットでPandasデータフレームを取得

データをファイルは、このような列に配置されている:

Group,1,1,2,2 
Value1,0.5,0.3,0.2,0.1 
Value2,1.7,1.3,1.1,1.0 
... 

私はswarmplot上の色は、グループによって決定されるように、そこに値ごとに個別のプロットになりたいです。

私はこれまでのところ持っている:私は列を引き出すことができ

0 Group Value1 Value2 ... 
1  1 0.5 1.7 
2  1 0.3 1.3 
3  2 0.2 1.1 
4  2 0.1 1.0 

私はその後、

k = data_t.keys()[[2,3]] 
sns.swarmplot(data_t[k]) 

を行う場合は、次の私のデータフレームがどのように見えるこの時点で

import pandas as pns 
import seaborn as sns 
data_in = pns.read_cvs('file.csv',header=None,index_col=0) 
data_t = data_in.transpose() 

私は色を除いて見栄えの良いプロットを手に入れたい。私の問題は、hueキーワード引数を使って色を指定するために、 'x'または 'y'引数を指定する必要があるということです。データフレームをどのように操作して、これらの変数のいずれかを指定できる形式にする方法がわかりません。 pivot_tableまたは完全に何か他のものを使用し、)...

0 Group Name Value 
1  1 Value1 0.5 
2  2 Value1 0.3 
3  1 Value2 0.2 
4  2 Value2 0.1 

しかし、私は(スタックしたい場合、私はうまくいかないことができます。私はこのような何かを取得したいと思います。

ありがとうございます。

答えて

2

テーブルを変換するためには、melt

pd.melt(df,id_vars='Group',value_vars=['Value1','Value2']) 

Group variable value 
0  1 Value1 0.5 
1  1 Value1 0.3 
2  2 Value1 0.2 
3  2 Value1 0.1 
4  1 Value2 1.7 
5  1 Value2 1.3 
6  2 Value2 1.1 
7  2 Value2 1.0 
+1

を使用することができますありがとうございました。 'melt'は仕事をしてくれました。私は決してそれと呼ばれる関数を探すとは思わなかったでしょう!私の場合、私はちょうど 'pns.melt(data_t、id_vars = 'Group')が必要でした –

関連する問題