ラベル BI の投稿を表示しています。 すべての投稿を表示
ラベル BI の投稿を表示しています。 すべての投稿を表示

2017年3月10日金曜日

データの抽出条件をIF文のように利用する方法

今回は主にレポーティングツールを利用する際に直面する問題について
対処法の一例をご紹介したいと思います。


抽出条件を変えるだけで複数のプログラム、レポートをまとめる事ができるが、
環境や条件などの理由から、SASのマクロ機能やストアドプロシージャなどが利用できない!
というケースが意外とよくあります。

・使用するレポーティングツールでは、ストアドプロシージャが使用できない。
・SASのマクロを使える人がいないため、今後のメンテナンスを考えて使わないでください。

といったケースが、経験上ありました。



例えば、以下のようなケースが該当します。

店舗を指定して売上を出力するレポートがあります。
そのレポートには以下の抽出条件があります。

    where TENPO = "店舗"
        and YYYYMM = "年月"
※斜体は実行時に入力するパラメータとします。

店舗の条件を削除すれば、全ての店舗情報が取得できる!と考えることができます。
実は、ここで以下の問題が起きます。

  SASのマクロやストアドプロシージャを利用せず、上記の抽出を行わないようにしてください。
  条件には外部からパラメータとして、任意の数字文字が与えられるとします。
  また、データにはあらかじめ全店を集計したレコードは存在しないとします。

難しく書きました。
この問題はSASのマクロを利用すれば以下のように簡単にかけます。

  ・全店か、支店の条件かを判断するフラグ(&ZENTEN)を用意して
    以下のようなプログラムを記載すれば対処できます。

  where
    %if(&ZENTEN = 0) %then %do;
      TENPO = "店舗" and
    %end;
  YYYYMM = "年月"


今回の問題は、マクロを使用せずに行ってください。というものです。
ストアドプロシージャ、SASのマクロ機能が利用できれば簡単に回避できる問題も
利用できなくなるだけで意外と頭を悩ませるものです。


回答例
  ・全店か、支店の条件かを判断するフラグを用意して、下記のようなプログラムを記載します。

where
  ( (全店フラグ = 1                               ) or
    (全店フラグ = 0 and TENPO = "店舗") ) and
  YYYYMM = "年月"

全店フラグが1の場合、全店を取得する場合は店舗の条件を無視したい。
逆に全店フラグが0の場合、店舗を取得する場合は店舗の条件を適応したい。
その為上記のような記載方法になっています。

・全店フラグに1を入れて実行した場合、実行される場合の条件式は以下のようになります。

  ( (1 = 1                               ) or
    (1 = 0 and TENPO = "店舗") )

つまり

  ( (真                               ) or    真の条件のみなので、こちらは適応されます。
    (偽 and TENPO = "店舗") )     偽かつ店舗条件なので、こちらは適応されません。

その為、店舗の条件を無視することができました。


・全店フラグに0を入れて実行した場合、実行される場合の条件式は以下のようになります。

  ( (0 = 1                               ) or
    (0 = 0 and TENPO = "店舗") )

つまり

  ( (偽                               ) or    偽の条件のみなので、こちらは適応されません。
    (真 and TENPO = "店舗") )     真かつ店舗条件なので、こちらは適応されます。

その為、店舗の条件を適応することができました。


上記の書き方をすれば、SASのマクロや、ストアドプロシージャを利用しなくても、
IF文のように利用することができます。
どうしても困ったときの対処方法としていかがでしょうか。

2012年6月1日金曜日

Big Data



最近「ビッグデータ」という単語を頻繁に聞くようになりました。
先の記事で紹介されているクラウドコンピューティングとも関連が深い分野です。
そこで、ビッグデータについて簡単にまとめてみました。


■ビッグデータとは



まずビッグデータが従来のデータとは異なる点として、以下の「3つのV」が挙げられます。

 Volume:容量…その名の通り大容量データであることです。

 Variety:多様性…従来の定型データだけでなく音声や画像・動画等の非定型データを含みます。

 Velocity:速さ…データが高いリアルタイム性を持っていることです。

ただし、現状では従来通りの構造的・定型データで単に容量の大きなものをビッグデータと呼ぶ場合もあり、定義は曖昧なようです。




■ビッグデータの処理



ビッグデータを使って分析し、有益な情報を得るためには、巨大なデータを処理出来る環境が必要になります。
そのために近年用いられている技術は、クラウドコンピューティングの記事でも登場していましたが複数の計算機で処理を実行する分散並列システムです。 代表的なものとしてHadoopやMapReduceなどのフレームワークが挙げられます。




■可能になること



これまで容量や処理技術の問題から蓄積出来なかったデータを利用したり、多種多様なデータを組み合わせて分析することによって、これまで無価値な情報だったものから有用な分析結果が得られるようになります。
実例の一つとして、ユーザの履歴情報を利用した近未来の予測があります。ある自動車メーカーでは、ユーザの行動履歴というビッグデータを分析することによって、時刻や場所から次の目的地の予測を行い、エネルギー効率の最適化を実現するシステムを  開発しました。データの収集には、GoogleのクラウドであるGoogle Storageが使われています。




■さいごに



データ蓄積にかかるコストは現在下がり続けており、企業は様々な種類のデータを長期にわたって大量に蓄積可能になりました。
ただデータとその処理技術が揃っていたとしても、それをどのように分析し、企業活動に利用するかは重要な課題です。どの分析手法を利用して結果をどう解釈するかは、機械化が困難で属人的なスキルであることを意識しておきたいところです。

 

Takahara@NI

 

2010年7月13日火曜日

BI関連の最近のツイート(2010/05/11~2010/06/10)

すでにみなさんご存知かと思いますが(!)、NIでは@ni_tweetsでSASの情報やBI市場の動向、その他業界全体の話題を中心に不定期に ゆる~くつぶやいてます。

今回は、そんなつぶやきの中からBIに関するつぶやきをピックアップしていくつか解説や感想を綴っていきます。

まず1つ目は、 ZDNet Japanさんの記事から。


BIツールのカタログ、意味わかりますか?--BIアーキテクチャから学ぶ初歩のBI用語 http://tinyurl.com/27qk3qkThu May 20 14:28:48 via API







BIを語るうえでも欠かせない各用語について簡潔に説明されています。

特に2ページ目からの、ETLの意味とその必要性、DWHとDMの役割りの違いについては、必要最低限のことが書いてあって分かりやすいです。








続いて同じくZDNet Japanさんの記事から。



オープンソースのBIツール「Pentaho Open BI Suite」が「Hadoop」対応へ - ソフトウェア - ZDNet Japan http://tinyurl.com/2e7mbuzWed May 26 04:48:13 via API








BIのオープンソースソフトウェアに関する話題です。

OSSのBIツール「Pentaho Open BI Suite」が、同じくOSSでApache製の分散処理システム「Hadoop」を採用したことにより、「Hadoop」をデータソースとした分析・マ イニングが可能になったということです。
国内での日本語化・ライセンス販売等のサポートは、大阪のKSKソリューションズさんが行っているそう です。








最後は、↑で紹介したHadoopに関する話題。



HadoopはBI市場の破壊的テクノロジーになる - Publickey http://tinyurl.com/3xpjcchWed Jun 02 15:04:53 via API








先ほどはOSSのBIツールとの連携でしたが、あのIBMも使用しているようです。
Hadoopを表計算のように使える「InfoSphere BigInsights」、IBMが発表


また、HadoopのBIツールへの貢献度はもちろんですが、記事後半のいわゆるBig Dataの変化に関する考察も興味深いです。

従来のトランザクションデータといえば、銀行やクレジットカード会社の金融系の取引情報、固定電話や携帯電話会社の通信情報、小売業全般のPOSデータ等 がメインでした。
それが最近では、Webでのアンケートやクチコミ等の顧客の言動を蓄積して分析することが増えてきているそうです。
Twitter等のソーシャルメディアでの発言も蓄積の対象でしょうか。

もちろんそのログは詳細であればあるほど正確な分析や予測につながるので、従来のトランザクションに匹敵するほどの膨大なデータ量になるそうです。





以上、BIに関する3つの記事を紹介させていただきました。

今回はオープンソース寄りの内容に偏ってしまいましたが、今後もBIに関する記事のツイートを続けていく予定です。
よろしければフォローもどうぞ。@ni_tweets
投稿者:@Massu_NI


[google]

ネイチャーインサイト サイトリニューアル&NIBLOGの引っ越し

ご連絡が遅くなりましたが、 ネイチャーインサイトの際とがリニューアルしました。 https://www.n-insight.co.jp/ それに伴い、NIBLOGも引っ越しすることになりました。 https://www.n-insight.co.jp/niblog/ ...