▲この問題、筆者には核心部分が分からない。
csv のテータを読み込むとき、csvt
などで補っている筈なのだが、どうしても、読み込んだデータは、stringになっているのだ。
原因は、不明だ。
できないところは、飛ばしていたのだが、数回繰り返すと、この難攻不落の部分に風穴を開けたいと思った。
で。
一旦、gis ソフトをストップして、オープンオフィスの表計算ツールで、直接、加工できないか—試みた。
保存しているファイルの中をオープンオフィスの表計算ツールでみていると、編み目模様の部分がある。
これを読み込んで見る。あぁ、shift
-jis を、採用する。
csvで読み込んだ、部分の隣接部(空いた列を作らないこと)に列を新規につくって、ここで計算することとした。
加工した「属性テーブル」は、そのまま、従前の形式で保存すれば、問題はない。
なるほど。
効率の良い方法ではないが、今まで、どうしていいのか—見当もつかなかった。
オープンオフィスの表計算ツールで、string
の数字を、integer
に変換する方法も上のようなツールで可能かもしれない。
とりあえず、「風穴」は開いたようだ。
★追記
属性テーブルから、内容をそのままエクセルなどにもっていく方法が書いてあった。
1.すべてを選択
2.選択している行を、クリップボードにコピーする
という2つのボタンがついていた。
まだまだ、見落としが多くて申し訳ない。
★追記その2
表題の問題は、属性テーブルにおいて、フィールド計算機の中で修正すべき問題だった。
フィールド計算機で
toint( ☓☓) として、☓☓のところにstringのデータのフィールドの頭の表示をいれ、ok とすれば、最後尾にinteger のデータとして付け加わる。
なんというか、ホンのちょいとのことなのだが、そのちょいとのことに気がつくまで、これだけの時間が必要なのだな。
★追記その3
どうやら、度重なる間違いの核心がつかめたようだ。
原因を箇条書にしてみよう。
1.指導書に書いてあるcsvt の書き方として、書いてある文章が古かった。
実際に、テキストないしcsvの内容をみてみると、integer にする行とか行数が違うのだ。改めて、数えてみて、string と integer の数を正確に書かなくてはならないのだ。
2.対象csvとcsvt (同じ文字だが、アルファベットの大文字、小文字は区別していない)とを並べておき、これを「ベクタレイヤの追加」で読み込む。
すると、ちゃんと、数字は右側によって、読み込まれている。
3.メッシュに結合してみると、正確に結合していた。
ほんのちょいとのことなのだが、その小さな間違いに気がつくまでの長いこと。
★追記
属性テーブルから、内容をそのままエクセルなどにもっていく方法が書いてあった。
1.すべてを選択
2.選択している行を、クリップボードにコピーする
という2つのボタンがついていた。
まだまだ、見落としが多くて申し訳ない。
★追記その2
表題の問題は、属性テーブルにおいて、フィールド計算機の中で修正すべき問題だった。
フィールド計算機で
toint( ☓☓) として、☓☓のところにstringのデータのフィールドの頭の表示をいれ、ok とすれば、最後尾にinteger のデータとして付け加わる。
なんというか、ホンのちょいとのことなのだが、そのちょいとのことに気がつくまで、これだけの時間が必要なのだな。
★追記その3
どうやら、度重なる間違いの核心がつかめたようだ。
原因を箇条書にしてみよう。
1.指導書に書いてあるcsvt の書き方として、書いてある文章が古かった。
実際に、テキストないしcsvの内容をみてみると、integer にする行とか行数が違うのだ。改めて、数えてみて、string と integer の数を正確に書かなくてはならないのだ。
2.対象csvとcsvt (同じ文字だが、アルファベットの大文字、小文字は区別していない)とを並べておき、これを「ベクタレイヤの追加」で読み込む。
すると、ちゃんと、数字は右側によって、読み込まれている。
3.メッシュに結合してみると、正確に結合していた。
ほんのちょいとのことなのだが、その小さな間違いに気がつくまでの長いこと。