2017-03-12 22 views
1

3列(インデックス、共分散行列、平均平方誤差)のテーブルを印刷するにはどうすればよいですか?Jupyterノートブックの印刷テーブル

from sklearn import linear_model # Machine Learning tool 
import numpy as np # Mathematics and Linear Algebra tool 
import pandas as pd # data structure tool 
import matplotlib.pyplot as plt # scientific plotting tool 
import seaborn as sns # # scientific plotting tool 
%matplotlib inline 

from sklearn import datasets, linear_model 
from sklearn.metrics import mean_squared_error 

diabetes = datasets.load_diabetes() # Load the diabetes dataset 
n = 10 # 10 datasets for analysis 
y_train = diabetes.target[:-20] 
y_test = diabetes.target[-20:] 
MSE = np.empty([n,1]) # mean square error 
COV = [None] * n # covariance 
regr = [None] * n 
table= [None] * n 
for i in range(n): 
    x = diabetes.data[:, np.newaxis, i] # select feature from dataset 
    x_train = x[:-20] 
    x_test = x[-20:] 
    regr[i] = linear_model.LinearRegression() 
    regr[i].fit(x_train, y_train) 
    y_predict = regr[i].predict(x_test) 
    MSE[i] = mean_squared_error(y_predict, y_test) 
    COV[i] = np.cov(x_train.T, np.reshape(y_train,[422,1]).T) 
    table[i] = [i, MSE[i], COV[i]] 
    print(table[i]) 

マトリックスtableにはすべてが必要です。しかし、私はそれを理解できるようにどのように整列させるのですか?光沢のあるLaTeXは必要ありませんが、使用することができます。代わりに

+0

こんにちは。私はあなたの質問があなたが掲示したデータやアルゴリズムに関係していないので、それが動作させる時間の無駄です(現在はありません)ので、最小限の作業例を作成することをお勧めします。 –

+0

これで動作します。ごめんなさい。 –

答えて

1

pandas.DataFrameを(使用):

import pandas as pd 

df = pd.DataFrame() 
a=range(10) 
b=range(10,20) 
c=range(20,30) 
df['a']=a 
df['b']=b 
df['c']=c 

df 
    a b c 
0 0 10 20 
1 1 11 21 
2 2 12 22 
3 3 13 23 
4 4 14 24 
5 5 15 25 
6 6 16 26 
7 7 17 27 
8 8 18 28 
9 9 19 29 

またはすべてを一度に:そこ

df = pd.DataFrame({'a': a, 'b': b, 'c': c}) 

df 
    a b c 
0 0 10 20 
1 1 11 21 
2 2 12 22 
3 3 13 23 
4 4 14 24 
5 5 15 25 
6 6 16 26 
7 7 17 27 
8 8 18 28 
9 9 19 29 
+0

左の列が0から9のインデックスで、中間の列が要素として2x2の行列を持ち、右の列が再び整数を持つ場合、それはどのように機能しますか? –

+0

サイドノート:あなたのコードで>>>を使用しないでください。無駄で、自分でコピーして実行するのが難しくなります。 –

関連する問題