1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
|
<?xml version="1.0" encoding="UTF-8"?>
<!--
* Copyright (C) 2010-2011 - INRIA - Allan CORNET
* Copyright (C) 2011 - INRIA - Michael Baudin
* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
-->
<refentry version="5.0-subset Scilab" xml:id="csvTextScan" xml:lang="ja"
xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:ns3="http://www.w3.org/1999/xhtml"
xmlns:mml="http://www.w3.org/1998/Math/MathML"
xmlns:db="http://docbook.org/ns/docbook">
<refnamediv>
<refname>csvTextScan</refname>
<refpurpose>カンマ区切りの値を行列に変換</refpurpose>
</refnamediv>
<refsynopsisdiv>
<title>呼び出し手順</title>
<synopsis>
A = csvTextScan(M)
A = csvTextScan(M, separator)
A = csvTextScan(M, separator, decimal)
A = csvTextScan(M, separator, decimal, conversion)
A = csvTextScan(M, separator, decimal, conversion, range)
</synopsis>
</refsynopsisdiv>
<refsection>
<title>パラメータ</title>
<variablelist>
<varlistentry>
<term>M</term>
<listitem>
<para>m行1列または1行m列の文字列の行列.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>separator</term>
<listitem>
<para>1行1列の文字列行列, 列セパレータ記号.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>decimal</term>
<listitem>
<para>1行1列の文字列行列, 小数点記号. 利用可能な値は
"." または ",".
</para>
<para>
<literal>decimal</literal> が <literal>[]</literal> 以外で
<literal>conversion</literal> が <literal>string</literal>
に設定された場合, 小数点変換が行われます.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>conversion</term>
<listitem>
<para>
1行1列の文字列行列,出力<literal>A</literal>の型です.
利用可能な値は"string" または "double"です.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>range</term>
<listitem>
<para>
1行4列または4行1列の浮動小数点の整数行列で,
読み込む列および行の範囲です
(デフォルトの範囲は [] で,全ての行と列を意味します).
<literal>[R1 C1 R2 C2]</literal>の形式で範囲を
指定してください.
ただし,(R1,C1)は読み込むデータの左上隅,
(R2,C2)は右下隅です.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>A</term>
<listitem>
<para>m行n列の文字列またはdouble行列.</para>
</listitem>
</varlistentry>
</variablelist>
</refsection>
<refsection>
<title>説明</title>
<para>
区切られたフィールドを有するアスキーファイルを指定すると,
この関数は対応する文字列またはdoubleのScilab行列を返します.
</para>
<para>
<literal>csvTextScan</literal> 関数の用途は
<literal>csvRead</literal>と同じですが,
<literal>csvRead</literal>がファイルから読み込むのに対して,
文字列から読み込みます.
</para>
<para>
オプションの入力引数のデフォルト値は,
<literal>csvDefault</literal> 関数により定義されます.
</para>
<para>
オプションの入力引数に空の行列<literal>[]</literal>を指定すると,
デフォルト値が設定されます.
</para>
<para>
入力引数 "conversion" が "double" の時,
.csvの中の数値以外のフィールド(例:文字列)は NaNに変換されます.
</para>
</refsection>
<refsection>
<title>例</title>
<programlisting role="example"><![CDATA[
// CSV文字列行列を文字列またはdouble行列に変換
A = ["1;3 + i"; "Nan;-Inf"]
B = csvTextScan(A,';')
C = csvTextScan(A,';',[],'double')
//
// 小数点記号を設定
Atext = [
" 1,000000000D+00; 0,000000000D+00; 2,000000000D+02; Inf; 0,000000000D+00";
" 1,000000000D+00; 1,00000000D-300; 2,000000000D+02; Inf; 0,000000000D+00";
" 1,000000000D+00; 1,00000000D-200; 2,000000000D+02; 3,15000000D+300; 1,020000000D+02";
" 9,999999999D-01; 1,00000000D-100; 2,000000000D+02; 2,960000000D+02; 1,170000000D+02";
" 1,000000000D+00; Inf;-Inf; Nan; 0,000000000D+00"
];
csvTextScan( Atext , ";" , "," )
]]>
</programlisting>
</refsection>
<refsection>
<title>参照</title>
<simplelist type="inline">
<member>
<link linkend="csvRead">csvRead</link>
</member>
</simplelist>
</refsection>
<refsection>
<title>履歴</title>
<revhistory>
<revision>
<revnumber>5.4.0</revnumber>
<revremark>関数が導入されました.
'csv_readwrite'モジュールに基づきます.
</revremark>
</revision>
<revision>
<revnumber>5.4.1</revnumber>
<revremark>
<literal>decimal</literal> が <literal>[]</literal> と
異なり, <literal>conversion</literal> が
<literal>string</literal>に設定された場合,
小数点変換が行われます.
</revremark>
</revision>
</revhistory>
</refsection>
</refentry>
|