過去の桐井戸端BBS (桐ver.9)
28178 科目別の属性別平均値を求めたい ぷりん 2004/11/11-10:38
おはようございます。
久しぶりの書き込みです。宜しくお願い致します。

-----------------------------------------------------
科目名 学部  学年 性別 属性 項目1 項目2・・・
国語  文学部 2年 男  必修 3   5   
国語  法学部 3年 女  選択 2   4
数学  文学部 1年 女  総合 4   2
           ・ 
           ・ 
           ・(項目1〜は5点満点の評価です)
--------------------------------------------------------
上記のようなデータ(サンプル数12万件)があって、
科目名毎に、学部・学年・性別・属性別の項目1〜の平均値を出したいと思っています。

イメージは
------------------------------------------------------
科目名 学部  学年 性別 属性 項目1 項目2・・・
    文学部平均        3.9   4.0
    法学部平均        2.4   3.3
     ・
     ・
        1年平均     2.5   3.8
        2年平均     3.4   4.2
         ・
         ・
           男平均   1.8   2.3
           女平均   2.5   3.4
              ・
              ・
              ・
国語平均             3.6   4.1
------------------------------------------------------
上記のような集計を科目別に出し、科目毎に1枚の表として出力し、
クライアントに納品しないといけないのですが、
行集計で指定すると、国語の文学部の1年の男の平均点、
国語の文学部の1年の女の平均点、というふうに集計されてしまいます。
(指定の仕方が間違っているのだと思いますが)
サンプル数12万件、科目数が3000科目あるので、
データベースソフトを使わないと無理かな、と思ってはいるのですが・・・

宜しくお願い致します。
    

28181 Re:科目別の属性別平均値 宮城 2004/11/11-18:05
記事番号28178へのコメント
ぷりんさん、こんにちは。

>科目名毎に、学部・学年・性別・属性別の項目1〜の
>平均値を出したいと思っています。

[科目][学部][学年][性別][属性]を連結した集計用key項目を
追加します。

念のため置換式はこんな感じ(項目計算式でもいいですが)。

[科目] +"/"+[学部]+"/"+[学年]+"/"+[性別]+"/"+[属性]

(区切り文字は見やすければなんでもいいです。)

この keyのみで行集計すればいいと思いますが。

>サンプル数12万件、科目数が3000科目あるので、
>データベースソフトを使わないと無理かな、と思ってはいるのですが・・・

??? 桐も曲がりなりにもデータベースソフトですが?

28195 ありがとうございます ぷりん 2004/11/12-13:59
記事番号28181へのコメント
宮城さん、ありがとうございます。

遅くなってすみません。
まだお教え下さった事は試してないのですが
先にお礼が言いたくて書き込みしました。

>>サンプル数12万件、科目数が3000科目あるので、
>>データベースソフトを使わないと無理かな、と思ってはいるのですが・・・
>
>??? 桐も曲がりなりにもデータベースソフトですが?
>

言葉が足りなくてすみません(^_^;)
桐やアクセス等のデータベースソフトを使わないと無理かな、
とは思うのですが、桐の初歩的な操作しか
使えていない自分にできるのかな・・・という意味です。

アクセスが苦手で、できるだけ避けて通ってきている
私にとって、桐はなくてはならないソフトです。\(^o^)/

では、お教え下さった内容をゆっくり試してみて、
また改めて書き込みにきます。
28197 うまくいきません・・・ ぷりん 2004/11/12-17:00
記事番号28181へのコメント
すみません。またまた私の言葉が(説明が)
足りなかったようです。m(__)m

宮城さんにお教えいただいた事を試してみたのですが・・・
(指定の仕方が間違っているのかもしれませんが・・・)

>[科目][学部][学年][性別][属性]を連結した集計用key項目を
>追加します。
>
>念のため置換式はこんな感じ(項目計算式でもいいですが)。
>
>[科目] +"/"+[学部]+"/"+[学年]+"/"+[性別]+"/"+[属性]
>
>(区切り文字は見やすければなんでもいいです。)
>
>この keyのみで行集計すればいいと思いますが。

追加した集計用Keyで行集計をすると
------------------------------------------
科目名 学部  学年 性別 属性 項目1 
国語  文学部 1年 男  必修 3.5   
国語  文学部 1年 男  選択 3.8
国語  文学部 1年 男  総合 4.0
国語  文学部 1年 女  必修 4.5
国語  文学部 1年 女  選択 3.2
         ・
         ・
         ・
-------------------------------------------
のような感じ(「国語」を受けた「文学部」の
「1年」の「男」の「必修」を集めて平均値を
出しているような感じ)で集計されてしまいます。

私が書いたイメージに補足すると、
------------------------------------------------------
科目名 学部  学年 性別 属性 件数 項目1 項目2・・・
    文学部平均        10  3.9   4.0
    法学部平均        10  2.4   3.3
     ・
     ・
        1年平均     15  2.5   3.8
        2年平均     15  3.4   4.2
         ・
         ・
           男平均   50  1.8   2.3
           女平均   50  2.5   3.4
              ・
              ・
              ・
国語平均             100  3.6   4.1
------------------------------------------------------
のように、国語の科目を受けた100名の内、
学部:文学部10名を集めた平均値、法学部10名・・・を集めた平均値
学年:1年15名を集めた平均値、2年15名・・・を集めた平均値
性別:男50名を集めた平均値、女50名を集めた平均値・・・

のような形で3000科目それぞれ集計をしないといけないのです。

うまく説明できなくてすみません。
宜しくお願いします。

28202 Re:うまくいきません・・・ うにん 2004/11/12-23:15
記事番号28197へのコメント

>のように、国語の科目を受けた100名の内、
>学部:文学部10名を集めた平均値、法学部10名・・・を集めた平均値
>学年:1年15名を集めた平均値、2年15名・・・を集めた平均値
>性別:男50名を集めた平均値、女50名を集めた平均値・・・

こういうのは行集計一発ではできません。集計グループが階層構造でなく
全く無関係なので、1つのデータ行を複数回集計する必要があるからです。
学部ごとの集計、学年ごとの集計、性別ごとの集計をそれぞれ書き出しして、
元の表と同じ定義の空の表に読み込めばいいでしょう。

28212 ありがとうございます ぷりん 2004/11/15-10:23
記事番号28202へのコメント
うにんさん、おはようございます。
遅くなってすみません。

>こういうのは行集計一発ではできません。集計グループが階層構造でなく
>全く無関係なので、1つのデータ行を複数回集計する必要があるからです。
>学部ごとの集計、学年ごとの集計、性別ごとの集計をそれぞれ書き出しして、
>元の表と同じ定義の空の表に読み込めばいいでしょう。

やはり、一回では無理なのですね。
うにんさんのアドバイスを参考にして、
また色々やってみようと思います。

ありがとうございました。

戻る