readdata - テキストファイルから数値データを読む
使い方
readdata(fileID, n)
readdata(fileID, format, n)
readdata(fileID, format)
パラメータ
fileID - 記号または文字列; ファイル名あるいはデータファイルのファイル識別子
n - 正の整数; データの列の数を指定する
format - integer, float, string の1つか、あるいはこれらの名前を含んだリスト; 読まれるデータのフォーマットを指定
|
説明
|
|
•
|
readdata 関数はテキストファイルから数値データを Maple に読み込みます。ファイル内のデータは空白で区切られた列をなす整数あるいは浮動小数点数で構成されていなければいけません。
|
|
もし 1 列からなるデータが読まれれば、出力はデータのリストです。複数の列が読まれれば、出力は指定された列がファイル内のデータの行に対応するデータのリストとなります。
|
•
|
1 番目の readdata 関数の呼び出し形式は、fileID で指定されたファイルから n 列の浮動小数点型の数値データを読み込みます。
|
•
|
2 番目と3 番目の readdata 関数の呼び出し形式は、データが整数、浮動小数点数あるいは文字列型かどうかを指定します。パラメータ format は integer, float, string の 1 つか、これらのいくつかを含んだリストでなければなりません。
|
|
注意: ファイルからデータの一行を読むには手続き readline が使われます。データは sscanf を使って取り出されます。
|
•
|
整数は浮動小数点数として読み出せますが、浮動小数点数は整数として読み出されるべきではありません。
|
•
|
(ファイル識別子の代わりに) ファイル名が指定され、かつファイルがまだ開かれていない場合、そのファイルは READ モードの TEXT ファイルとして開かれます。さらに、ファイル名が指定された場合には、 readdata が返ってきた時にファイルは閉じられます。
|
|
注意: writedata 関数はファイルに数値データを書き込む対応した関数です。
|
|
|
例
|
|
data という例のファイルが以下のデータを含んでいるとします。
1 1 50
1 2 55
2 1 55
2 2 70
ファイル data から3列の浮動小数点数を読みます。
[[1., 1., 50.], [1., 2., 55.], [2., 1., 55.], [2., 2., 70.]]
3列を整数として読みます。
>
|
readdata(data,integer,3);
|
[[1, 1, 50], [1, 2, 55], [2, 1, 55], [2, 2, 70]]
データの最初の列を整数として読みます。
>
|
readdata(data,integer);
|
[1, 1, 2, 2]
データの最初の列を浮動小数点数として読みます。
[1., 1., 2., 2.]
最初の2列を整数として読み、3 列目を浮動小数点数として読みます。
>
|
readdata(data,[integer,integer,float]);
|
[[1, 1, 50.], [1, 2, 55.], [2, 1, 55.], [2, 2, 70.]]
|
|