データの形式 | package入門(ユーティリティー編) [講座] | 逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓rpnの実践ウェブ   
rpn hacks! アールピーエヌ・ハックスサイトマップ

rpn | 講座 | package入門 | ポテンシャルを飛躍的に高めるrpnパッケージを学習。

データの形式

 データは、以下のように数値化されたものや文字として示されたものなど、多種多様です。

  全部数値化されたデータ     数値と文字が混合したデータ
  20000101 92 13             2000 Jan m 16 f 32
  20000102 32 21             2000 Feb m 18 f 28
  20000103 36 23             2000 Mar m 28 f 43


rpnが処理できるのは数値化されたデータなので、文字の場合は数値化する必要があります。例えば、Janは1、Febは2、Marは3、mは1、fは2のようにです。

  数値化したデータ
  2000 1 1 16 2 32
  2000 2 1 18 2 28
  2000 3 1 28 2 43


4つのデータ形式を意識しよう

 いずれにしても、数値化されたデータは以下の4つの形式になります。具体的な数値と一緒に示します。A)からD)のデータが格納されているファイル名をそれぞれdata1.txtからdata4.txtとします。

  A) 1行1列   B) m行1列   C) 1行n列           D) m行n列
  1           1           1 2 3 4 5 6 7 8 9   1 2 3 4 5 6 7 8 9
              2                               2 9 6 2 3 5 8 0 6
  |           3 ---> data2.txt    |           3 7 6 6 1 3 2 9 4
  v           4                   v           4 4 8 4 6 2 7 8 2
  data1.txt   5               data3.txt       5 0 5 5 8 4 7 7 6
              6                               6 5 1 4 8 3 5 9 5
              7               data4.txt <---  7 3 7 2 5 0 9 6 1
              8                               8 9 4 1 3 4 3 6 4
              9                               9 3 1 7 7 3 1 0 3


A形式の1行1列のデータは計算する必要がないので省くとすると、残りのB、C、Dのデータ形式が計算対象です。

カンタン分析パッケージやrpnマイスターパッケージであればCとD形式の計算もサポートしていますが、rpn標準版に無料添付されるsum, mean, max, min, sdevといったrpnプログラムはB形式の数値データを計算するものです。

そこで、BとC形式の双方向の変換ができれば自由に計算することができるようになりますね。ユーティリティーパッケージにはBとC形式用のrpnプログラムが準備されていますが、どちらかの形式だけに対応したrpnプログラムでもデータ形式の双方向変換ができれば問題はなくなります。

またBとC形式の双方向変換ができるようになれば、あとはD形式からBやC形式へのデータ抽出があればデータの形式に関係なく縦横無尽に計算できることになります。

情報本講座で使用したプログラムは、ユーティリティーパッケージとして購入することができます。xypとnpdはrpnの姉妹ソフトウェアです。詳しくはプロダクトを参照ください。

ユーティリティーパッケージ

ユーティリティー

マイスター

カレンダー

警告文字で作られた図表や式が崩れることがあります。ブラウザによっては固定幅フォントをMSゴシックにするときれいに表示されます。それでも崩れる場合は図表や式をメモ帳にコピー後、閲覧下さい。

警告rpn標準版(2kリビジョン)はダブルクォートで囲ってください。

rpn 1 2 + ⇒ rpn "1 2 +"
rpn 1 -c foo ⇒ rpn "1" -c "foo"

ダブルクォートは省略できることが多いのですが、慣れない間は囲んだほうが無難です。なお、本ウェブサイトの記事ではrpn標準版(98リビジョン)を使用しているため囲っていません。詳しくは技術サポートの「rpn TIPS」を参照ください。

注意rpnの障害情報と対策はこちら