過去の桐井戸端BBS (桐ver.9) |
25635 | 横に展開したデータを縦に直して集計したい | 斎藤 | 2004/03/27-00:02 |
昨日質問させていただき、無事解決した斎藤です。 別のところでまたつまづいてしまったので、再度質問させてください。 アンケートは2万数千件、会社コードが150件、質問数が180問あります。 質問のうち点数をつけられているものが120件ほどあるのですが、 会社別の報告書を作る際に偏差値を出し、偏差値50以上の項目と50以下の項目をリストアップして 偏差値を表示しなくてはなりません。 そこで、 会社コード 答1 答2 答3・・・答128 ----------------------------------------^^------- 会社コード1 偏差値 偏差値 偏差値・・・偏差値 と並んでいるデータを 会社コード 回答No. 偏差値 ----------------------------- 会社コード1 答1 偏差値 会社コード1 答2 偏差値 ・ ・ ・ 会社コード1 答128 偏差値 ・ ・ ・ 会社コード150 答128 偏差値 というふうに並べ替えたいのです。 何かいい方法はありますでしょうか。 宜しくお願いします。 | |||
25639 | 一括処理でしょうか | 佐田 守弘 | 2004/03/27-10:07 |
記事番号25635へのコメント 斎藤さん 縦のものを横に展開するには、転置集計でできますが、 横に展開したものを縦に直すのは、一括処理で行う方法しかすぐには思いつかないですね。 この横に展開されている会社コード、答1〜答128がある表を「表1」とし、 別に[会社コード][答]の項目の表を作って「表2」とします。 正式な項目名等が解りませんから、使える一括処理は書けませんが、 概ね、次の様な形でしょうか。 ===================================== 繰り返し (.not #終端行) 繰り返し &答番=2,129 代入 &会社コード=[会社コード] 代入 &答=#項目属性(&答番,0) 編集表 表2 行追加 [会社コード]=&会社コード,[答]=&答 繰り返し終了 ジャンプ 行番号=+1 繰り返し終了 ===================================== なお、答1〜答128についての繰り返しは、ここでは2番目〜129番目まで連続してならんでいるとの前提で考えました。 これらがどういった順番で並んでいるか、あるいは連番号付の項目名であるのかといった事によって、方法を考える必要があります。 佐田守弘(KS-00119) | |||
25689 | Re:一括処理でしょうか | 斎藤 | 2004/03/30-12:17 |
記事番号25639へのコメント 佐田先生、ありがとうござました。 お礼を申し上げるのが遅くなり、すみませんでした。 やはり一括処理しかないのですね・・・ 答の項目名は連番ではないので、書いていただいた一括処理を参考に何とか 自分で考えようと思って頑張っていますが、なかなかうまくいきません。 今まで一括処理をつかったことはなく、履歴をいじったくらいなので苦労していますが レベルアップのためにも何とか頑張ってみようと思います。 本当にありがとうございました。 齋藤 |