ワークシートから行列に変換

分析またはグラフ作成時に、ワークシートから行列に変換またはその反対の操作をして、データを再構成する必要があるかもしれません。このページはワークシートを行列に変換する時のサンプルと情報を紹介します。なお、反対の操作をする際は行列をワークシートに変換するを確認してください。

ワークシートから行列

ワークシートに含まれるデータは、一連の グリッディングXファンクションを使って行列に変換することができます。

w2m Xファンクションは行列の形式で入力されているワークシートを行列に変換します。元のワークシートのデータには、最初の列、最初の行、ヘッダ行にXまたはY座標値を含めることができます。しかし、行列の座標は等間隔でなければならいので、元のワークシートに等間隔なX/Y値が入力されている必要があります。

X/Y座標値が等間隔でなければ、行列に変換するのではなく、 仮想行列 を使用してください。

次のサンプルはワークシートから直接変換する方法を示しています。

// 新しいワークシートを作成
newbook;
// サンプルデータをインポート
string fname$ = system.path.program$ +
	"\samples\Matrix Conversion and Gridding\DirectXY.dat";
impasc;
// ワークシートを行列に変換、最初の行がXで最初の列がY
w2m xy:=xcol xlabel:=row1 ycol:=1;
// 行列ウィンドウに X/Y 値を表示
page.cntrl = 2;

ワークシートデータがXYZ列形式で構成されているとき、グリッディング法を使ってこのようなデータを行列に変換します。多くのグリッディング法が利用でき、これにより元のデータを補間し、指定した次数での等間隔なXYで、値の配列を生成します。

次のサンプルは、Renka-Clineグリッディング法でXYZワークシートデータを変換し、新しい行列から3Dグラフを作成します。

// シート無しで新しいワークシートを作成
newbook;
// サンプルデータをインポート
string fname$ = system.path.program$ +
	"\samples\Matrix Conversion and Gridding\XYZ Random Gaussian.dat";
impasc;
// ワークシートデータをRenka-Clineグリッディング法で20 x 20の行列に変換
xyz_renka 3 20 20;
// 3Dカラーマップグラフを作成
worksheet -p 242 cmap;