2017-03-17 6 views
2

Irisデータセット(https://archive.ics.uci.edu/ml/datasets/Iris)のSOMマッピングの視覚化を作成しようとしています。自己組織化マッププロットまたは虹彩データセットでのクラスラベルの可視化

私のコードは、これまでのところ:このマッピング生成

from sklearn.datasets import load_iris 
from mvpa2.suite import * 
import pandas as pd 
import numpy as np 

df = pd.read_csv(filepath_or_buffer='data/iris.data', header=None, sep=',') 
df.columns=['sepal_len', 'sepal_wid', 'petal_len', 'petal_wid', 'class'] 
df.dropna(how="all", inplace=True) # drops the empty line at file-end 

# split the data table into feature data x and class labels y 
x = df.ix[:,0:4].values # the first 4 columns are the features 
y = df.ix[:,4].values # the last column is the class label 
t = np.zeros(len(y), dtype=int) 
t[y == 'Iris-setosa'] = 0 
t[y == 'Iris-versicolor'] = 1 
t[y == 'Iris-virginica'] = 2 

som = SimpleSOMMapper((240, 320), 100, learning_rate=0.05) 
som.train(x) 

pl.imshow(som.K, origin='lower') 
mapped = som(x) 

for i, m in enumerate(mapped): 
    pl.text(m[1], m[0], t[i], ha='center', va='center', 
      bbox=dict(facecolor='white', alpha=0.5, lw=0)) 
pl.show() 

enter image description here

が、それはこの1つのように立派に見えるように、パレットをカスタマイズする方法はありますか? (https://github.com/JustGlowing/minisomから取得)?

enter image description here

基本的に私は(おそらく少ない色で)よりよいパレットを使用し、よりよい方法で、クラスラベルをマークしようとしています。

ありがとうございます。

+0

質問はここにトピックオフになっている、それは私が私のデータをスライスするのを忘れたことが判明します。これは[SO]のトピックにあるように見えます。あなたが待っている場合は、そこに移行しようとします。 – gung

+0

申し訳ありません私は実際に自己組織化マップを議論していないので、どの場所が適切かは分かりませんでした。お返事ありがとうございます –

答えて

1

私は自分の質問にお答えします:

pl.imshow(som.K[:,:,0], origin='lower') 

すべてが今も元気になります:Pythonでコーディングする方法について enter image description here

+0

これは本当にあなたが言及して質問に欲しかったものですか? – Gathide

+0

うん、これはまさに私が望んでいたものです。 –

関連する問題