12-16-2005 02:23 AM
12-16-2005 03:56 AM
12-16-2005 03:59 AM
自己レスですが、先程の添付はLabVIEW6で、使用した関数は
Read Characters From File.vi
Match Pattern
Empty String/Path?
の3つです。念のため・・・
「Read Spreadsheet....」とかを使うと、一度数値化されてしまうので、
今回の例のような場合は普通に文字で読んだ方が良いかなと思いまして。
12-18-2005 08:00 PM
アドバイス頂き、ありがとうございます。
参考になりました。
最終的には、表のデータを列毎に取り出し、ヒストグラム等の統計処理に使用することを
考えています。
ですので、最終的には列毎に数値データとして扱う必要があります。
一番上の行(A,B,C,D,E)は各列の項目名のイメージですので、その下の行(2行目)から
が実際に取り扱う必要のあるデータということになります。
(空白及び数値以外の文字もこの時点で除外する必要があります)
ここで処理方法について悩んでました。
ややこしい質問ですが、もし例などあれば、参考にさせて頂きたく考えております。
よろしくお願いします。
12-18-2005 08:52 PM
12-19-2005 07:30 AM
素早いアドバイスありがとうございます。
LabVIEWを始めてまだ2ヶ月程度で、不慣れなことが多く、このようなページで疑問を相談させて頂くことが
でき、ありがたいと思っております。
ご提示頂いたサンプルですが、所望していたイメージとほぼ合致します。
ありがとうございます。
重ね重ねの質問になり、大変恐縮なのですが、表自体も数字以外を除去した形で表示させるような
サンプルなどありますでしょうか?
質問ばかりで恐縮なので、教えて頂いたPRGを参考に自分でもやってみようとは思っておりますが、
もし簡単に追加編集してできるレベルであれば勉強させて頂きたく思っております。
以上
12-20-2005 06:07 PM
(あまり良いサンプルではありませんが)先日のviに対し、今回の添付の絵のように、表を生成する段階で数値セルか文字列セルかどうかの判定をしてしまえば良いと思います。文字列セル(空のセルを含む)と判断されたセルには空の文字列をセットすることで、表にする時点で数値のセルだけ残すことができます。(この例では項目名までも空欄になりますが)
本例では、その表から数値データを生成しています。2次元数値配列だと、列ごとに行数が異なる配列は作れませんが、列の1次元配列をクラスタにいれ、それをさらに配列にすることで、列ごとに行数が異なる状態のまま全体を1つのデータにすることができます。ここから特定の列の数値データを取り出したいときは、IndexArrayで所定の列を取り出してから、Unbundleでクラスタから外すと、希望の列が1次元数値配列で得られます。
(本例は、数値か文字列かの判定と実際に数値化するところで2回ScanFromStringを使っていて無駄があるので、本人的にはあまり好きな組み方ではありませんが・・・一応、ご参考下さい)
12-26-2005 07:48 PM