★データ解析備忘録★

ゆる〜い技術メモ

Treasure Dataの日付範囲指定はイコールを含むのか

Treasure Dataでクエリを書くとき、where句で日付指定をする場合が多いわけですが、範囲はイコールを含むのでしょうか?
以前書いた記事でちょろっと触れてそこに答えもあるのですが、イコールの有無に焦点を当てたものも欲しかったのでメモ。
< 時間 < なのか <= 時間 <= なのかは意外と重要です。
y-mattu.hatenablog.com
それと、公式のUDFマニュアルにも書いてあります。
docs.treasuredata.com


結論

そもそもTreasure Dataでは日付指定はTD_TIMR_RANGE関数を使うわけですが、結論としては以下の二つは同値です。

TD_TIME_RANGE(time,'2016-03-20 00:00:00', '2016-03-21 00:00:00', 'JST')
TD_TIME_RANGE(time,'2016-03-20', '2016-03-21', 'JST')

つまり
2016-03-20 00:00:00 >= time and time < 2016-03-21 00:00:00
となります。
TD_TIME_RANGE関数は、前半はイコールを含むけど後半はイコールを含まないみたいです。

また、ありがちな間違いとして例えば

TD_TIME_RANGE(time,'2016-03-20 00:00:00', '2016-03-20 23:59:59', 'JST')

としてしまうことがあります。実際僕もしばらくこれで書いていた時期がありました。
しかし、この書き方は2016-03-20 00:00:00 >= time and time < 2016-03-20 23:59:59を意味しているので23:59:59の値は取ることができません。
気を付けましょう。

ちなみに

たぶんTreasure Dataユーザーなら知ってると思いますが、Hive とPresto では文字列の囲み方が""''と違います。

統計の誤解と濫用や「p値至上主義」を憂慮しp値の6原則を発表したASAの声明に対する統計学徒の素人意見

アメリカ統計学会がp値に関して以下のような声明を3月7日(現地時間)に発表したということで注目を集めているようです。

AMERICAN STATISTICAL ASSOCIATION RELEASES STATEMENT ON
STATISTICAL SIGNIFICANCE AND P-VALUES
https://www.amstat.org/newsroom/pressreleases/P-ValueStatement.pdf

また、すでにこの声明に対し複数の方がブログで紹介をしています。
tjo.hatenablog.com
d.hatena.ne.jp

どちらも非常に大事なことが書かれているので、どちらも読むことをお勧めします。
まあこれらの記事は読んでいただくとして、僕は僕なりに思うことがあるのでそれを書こうと思います。

声明のp値に関する6項目を一応自分でも訳してみます。

1. P-values can indicate how incompatible the data are with a specified statistical model.
2. P-values do not measure the probability that the studied hypothesis is true, or the
probability that the data were produced by random chance alone.
3. Scientific conclusions and business or policy decisions should not be based only on
whether a p-value passes a specific threshold.
4. Proper inference requires full reporting and transparency.
5. A p-value, or statistical significance, does not measure the size of an effect or the
importance of a result.
6. By itself, a p-value does not provide a good measure of evidence regarding a model or
hypothesis.

(私訳)
1. p値は「そのデータがある特定の統計モデルに対してどのくらい適さないか」を示し得る。
2. p値は「検証される仮説が真である確率」を示さないし、「ランダムな偶然のみからそのデータが得られた確率」も示さない。
3. 科学的な結論とビジネス・政策的な決定は「p値がある特定の閾値を切ったか」のみに基づくべきではない。
4. 適切な推論には完全なレポーティングと透明性を必要とする。
5. あるp値、あるいはある統計的な有意性は、結果の重要性や効果の量を示さない。
6. p値はそれ自体ではモデルや仮説に関するエビデンスの良い尺度にはならない。

続きを読む

Matlabで変数の削除

新しい言語、特に対話型のをやると必ず気になるのが変数の除去について。

Matlabの場合、は以下のようにやります。

変数をすべて除去

clearvars

特定の変数を削除
変数名をvariablesで指定

clearvars variables

特定の変数を残してあとは削除
keepVariablesで残す変数を指定

clearvars -except keepVariables

今の2つを組み合わせて

clearvars variables -except keepVariables

も可能。

多項分布とディリクレ分布のまとめと可視化

多項分布とその共役事前分布について、可視化をしながら整理してみたいと思います。
どちらかというと、可視化をしてパラメーターで分布の形がどう変わるのかを見ることがメインです。

多項分布とは

二項分布の一般化と考えればよいです。
「コインを投げた時の表裏の分布」が二項分布なら、多項分布は「さいころを投げて出る目の分布」になりますね。

確率密度関数
{ \displaystyle
Multi(\boldsymbol{x} | n,p) = \frac{n!}{n_1! \cdots n_k!}p_1^{n_1} \cdots p_k^{n_k}
}
で表され、 p_1 + \cdots + p_k = 1になります。。
さっきの言い方を上の式っぽく一般化すると、多項分布とは
確率  P_iで事象 A_iが起こる (i=1,\cdots,k_i=1,\cdots,k)ような試行を n回行ったとき「どの事象が何回起こったか」を表す分布です。また、k=2のとき二項分布になります

その他、平均(期待値)は
 E[N_i] = np_i
分散は
 V[N_i] = np_i(1-p_i)
となります。

続きを読む

『R言語徹底解説』(原著 "Advanced R")を読んだので感想を書く

待望の『R言語徹底解説』が届きました。(2/10)


f:id:songcunyouzai:20160212013824j:plain:w300
R言語徹底解説

R言語徹底解説

本来は昨年のクリスマスあたりに発売される予定だったので、二か月近く待ったことになります。
僕はかなり早くから予約していたので、まさに「待望」といった感じです。

二週間以上かかってようやく通して読みました。まだ理解できていない部分も多いのでこれから何度も読み直さなければいけないなあという感じですが、やはり感想を書いておかないとということで感想を書いていきます。ちょっと長くなります。

  • どんな本か
    • 総評・感想
    • 不満
  • 内容
    • 導入
    • 第Ⅰ部 基本編
    • 第Ⅱ部 関数型プログラミング
    • 第Ⅲ部 言語オブジェクトに対する計算
    • 第Ⅳ部 パフォーマンス

どんな本か

さて、この本はご存知の通りHadley Wickham*1著"Advanced R"の和訳本です。
Rを使っている人なら、ggplot2dplyrといったパッケージでHadley氏の恩恵を受けていることでしょう。
そんなHdaley氏が10年以上Rを研究した成果がこの本には詰まっています。

また、翻訳者陣に関しても各々がRに関する本を多数執筆しており、Rの中級者以上で彼らを知らない人はほとんどいないだろうというくらい実力も折り紙付きの方々なので、翻訳書として安心して読むことができます。

内容は以下で追いますが、先に総評・感想、不満点を書いておこうと思います。

総評・感想

この本が素晴らしい点は二つあると思います。
まず、本当にR言語について詳細に書かれていること。データフレームやリストからデータを抽出するといった基本的なことでさえ一章が割かれてますし、読んでいて今まで知らないことばかりだったので(単に僕が無知なだけですが)、購入してよかったと思います。また、R言語についてかなり根本的ンところまで書かれているので、業務でRを使うときも今までは思いつかなかったようなアイデアが出てきたりして自分でも驚いてます。

二つ目は、この本が翻訳書として優れていること。オライリーの翻訳書なんかでは日本語として不自然だったり何を言っているのかわからない箇所があることがありますが、この本はそういうことは一切ありません(誤植は多数ありますが)。

*1:Rstudio社の最高技術者

続きを読む