投稿

ラベル(統計)が付いた投稿を表示しています

[気象] 秋から冬にかけて毎年の最低気温が0℃未満に下がった日を調べる

イメージ
今年も少し寒くなってきました さて、まだ日中は暖かいですが、朝晩は結構冷えるようになってきました。もう10月も終わりに近く、間もなく冬になって寒くなっていきます。こちらは冬はそこそこ雪が積もるので、いまのうちから何かと準備が必要になってきます。灯油を確保したりストーブやコタツを出したり、除雪で邪魔になりそうなのを片付けておいたり。 テレビのCMでももうスタッドレスタイヤの宣伝をしてますね。そろそろ車のタイヤもスタッドレスタイヤに履き換える必要も出てきます。 いつもはいつ頃から寒くなっていたのか? まぁ日常生活の準備はいいとして、いつもは一体いつぐらいから本格的に寒くなっていたのだろう?というのが気になりました。で、気象庁のホームページから過去の気象データをダウンロード出来るので、これを利用して調べてみることにします。 気象庁 Japan Meteorological Agency   まず「寒くなる」という意味が曖昧過ぎるので、ただ単に気温データを持ってきてもどうにもなりません。ここはしっかり「何℃未満になったら寒くなったとする」と意味付けをしておきましょう。こうすることで気温データの数値を元に判定することが出来ます。 ただ「寒くなる」 というのも体感的なものですし、一体何℃を基準にするかは個人差もあるので、まぁ適当にやっていきましょう。 データを元に解析 まず最低気温が0℃未満、つまり水が凍る温度になったときを基準とします(あくまでも個人的に勝手に決めた基準)。また最高気温、1日の平均気温は今回は無視します。気象データをダウンロード出来るといっても一度にダウンロード出来る項目数が限られているので、始めから何でもかんでも扱えるではないです。仮にダウンロード出来る項目数に上限が無くても、何を解析するのか明確にしてからで無いと、無闇矢鱈にダウンロードしても意味がないですし。 で、今回は秋から冬にかけての最低気温が0℃未満になった始めての日を毎年のデータとしてグラフにしていきます。 (今回0℃未満で扱いますけど、0℃以下とした場合はちょっと日付はズレるかと思います) さてさて、早速データをダウンロードしようとしたのですが、一地点の最低気温だけでも毎日のデータを何年分も持ってこようとすると結構すぐにダウンロード条件に引っ...

[統計] サイコロ5個同時に振ったときの合計の分布

イメージ
先日から少しばかりプログラミングの練習をかねて統計の問題を扱ってみています。まぁ「統計」と言っても最近流行りの「ビックデータ」やらなんやらではなく基礎的な問題から取り組んでみています。 ※先日扱ったネタ↓ [統計] コインで表を1、裏を0とした時に4つ一度に投げた場合に合計がどうなるかの確率を計算 今回は以前のコインネタと同様に、典型的なサイコロを扱った問題を扱ってみます。 問題設定 想定としてサイコロ5個を用います。前回と同様に実際のサイコロではなく、プログラミングで乱数を扱うことで仮想的にサイコロとして扱います。 で、観測する事象は、 一度にサイコロ5個を振ったときの全サイコロの出目の合計 とします。これをn回繰り返してそのとき出た出目の合計をグラフにプロットして可視化していくことにします。可視化することでだいたいの分布を目視で判断出来るだろうなぁ、という狙い。今回はそこまでで、それ以上踏み込んだりはしません(というかあまりネタを詰め込んでやるとめんどうなので…)。 プログラミング 前回は省略しましたが、今回プログラミングしたときのコードは以下のようになります。 import random s = 1000 for i in range(s): ci = i + 1 a1 = random.randint(1, 6) a2 = random.randint(1, 6) a3 = random.randint(1, 6) a4 = random.randint(1, 6) a5 = random.randint(1, 6) asum = a1 + a2 + a3 + a4 + a5 print(ci, asum) プログラミングは前回同様Pythonを使っています。 簡単に解説すると、初めに乱数モジュールを読み込んで、次に変数sに何回繰り返しするか指定してあります。 そしてループをs回繰り返すようにして、乱数で1〜6までの整数を生成してひとまず変数aなんちゃらに入れておきます。この変数aなんちゃらがそれぞれ1個1個のサイコロの出目になります。a1〜a5をサイコロ5個として扱う算段です。 今回の目的として出目の合計を求めたいので、aなんちゃらを足し...

[統計] コインで表を1、裏を0とした時に4つ一度に投げた場合に合計がどうなるかの確率を計算

イメージ
プログラミングの練習がてら、統計的な問題の計算をやってみることにしました。 問題 問題は コインを4つ用意  コインの表を「1」、裏を「0」とする 4つのコインを一度に投げる 4つのコインの裏表を判定して合計を求める としました。 解説 4つのコインの裏表の組み合わせは「0, 1」で表すと(sumは4つのコインの合計) 0, 0, 0, 0 : sum 0 1, 0, 0, 0 : sum 1 0, 1, 0, 0 : sum 1 0, 0, 1, 0 : sum 1 0, 0, 0, 1 : sum 1 1, 1, 0, 0 : sum 2 1, 0, 1, 0 : sum 2 1, 0, 0, 1 : sum 2 0, 1, 1, 0 : sum 2 0, 1, 0, 1 : sum 2 0, 0, 1, 1 : sum 2 1, 1, 1, 0 : sum 3 1, 1, 0, 1 : sum 3 1, 0, 1, 1 : sum 3 0, 1, 1, 1 : sum 3 1, 1, 1, 1 : sum 4 となります。 全事象の数は2^4 = 16 それぞれの事象を合計(sum)ごとに分けると sum 0 : 1 (6.25%) sum 1 : 4 (25.00%) sum 2 : 6 (37.50%) sum 3 : 4 (25.00%) sum 4 : 1 (6.25%) となります。合計が2になる確率が最も高く、続いて合計1と3、そして合計1と4が最も低い確率となります。 これを実際にコインを投げてこの確率になるか確かめるわけですが、実際にコインを投げ続けるのは大変過ぎるのでプログラミングを組んでコンピューター上で仮想実験することにしました。 プログラミング プログラミング言語はPythonを用いました。 コインを投げるにあたっては、randomモジュールのrandint()関数で整数0, 1のいずれかが出る乱数を用いて対応することにしました。 手順としてはまずコインを1回投げる毎に合計を求めます。そして合計0〜4の5つのうちそれぞれ何回出ているのかを求めて、出た回数の確率を求めていきます。 例えば1投目で合計0となったとすれば、 sum...

1年は365日だけど毎月の日数は30日だったり31日だったり28日だったり。その違いがどう現れるのかについて

イメージ
1年は平年では365日。うるう年では2月に1日加わって366日です。さて、1年は12ヶ月ありますが、毎月の日数は30日だったり31日だったり2月は28日(or 29日)だったりと違いがあります。 単純に考えると、この違いが毎月の集計に現れることになります。 お散歩の歩数を測っているとき 朝食やおやつに食べるバナナの本数を月ごとに数えるとき 毎月の売り上げを集計するとき ブログや動画のアクセス数を集計するとき などなど、いろいろ関係する話はあります。まぁ30日間と31日間では1日しか違いがないのであまり気にしなくていいかも知れませんが、ここで改めて確認してみることにします。 まず1年の日数を月ごとに書くと以下の表のようになります。 これをグラフにすると次のようになります。  大雑把に眺めるとだいたい同じくらいの日数に見えますが、どれくらいの違いがあるのか見てみることにします。 まず1年は365日。これを年間の月数12で割ると、1ヶ月は平均で30.4266.....日となります。毎月の日数がこの平均値と比較してどれくらいの割り合いなのかをグラフにすると以下のようになります。 (例えば8月では31日間なので、 31/平均値 ≒ 1.02 という計算です) そのままでは違いが分かりにくいので拡大した図を挿入してあります。2月は28日間と他の月と比べても少ないので差が大きく出ています。また他の月でも違いが見て取れます。 ここまでの話から、毎月ごとの集計では日数の違いにより若干の違いが生じてくるということが分かると思います。仮に毎日バナナを2本食べていたとすると、それを集計すると月によって若干多かったり少なかったりしてくることになります。例えば、そういった集計をグラフにして見ると、毎日同じ本数のバナナを食べていてもグラフに月ごとの周期が乗って来ることになります。 ちょっとした集計ならそういった差は取るに足らないものですが、もうちょっと正確性が要求されるようなものだとこういった話も考慮していく必要があるでしょう。 さて、別の話としてこういった違いを除いて考える方法として、1年を1週間(7日間)ごとの区切りで考えるというものがあります。この場合は月ごとに日数が異なるのとは違い、7日間とキッチリ決まっているた...

「原発」関連本の出版数(Amazonのデータより)

イメージ
原発関連の書籍がどれくらい出版されているのか気になったので調べてみた。 書名に「原発」が含まれる書籍の月毎の出版数(Amazonのデータより)。赤丸は原発事故発生した月。緑丸はその1年後。グラフを見ると、原発事故発生した次の月から関連本が多く出版されているのがわかる。 twitter.com/Yutarine/statu… — ゆたりん☆未来が行方不明さん (@Yutarine) 9月 5, 2012 原発事故後にこれだけ多くの原発関連の書籍が出版されているということは、人々がそのような情報を欲するようになったといえるだろう。 検索方法は、Amazonの本の詳細検索画面で以下のように「原発」が書名に含まれる本を出版月ごとに抽出して行った。

大学・大学院 卒業者進路別割合

イメージ
さて、文部科学省が統計を取っている学校(小中高、大学、大学院など)についての基本調査の平成19年度の速報が出たみたいのなので、今日はそれを参考にしてブログを書いてみたいと思います。 で、数ある統計データの中で、今回注目したのが 大学・大学院の卒業者進路別割合 文部科学省が発表している学校基本調査より平成19年度の大学・大学院の卒業者の進路別割合を調べてみた( データの引用 文部科学省 学校基本調査) で、データから作ってみたグラフがこれ↓ まず、 就業者 ( オレンジ )について比較してみる 大学・修士では就職者の割合が7割近いのに大して、博士課程では5割を下回っている…。一時的な仕事に就いた者を含めてなんとか5割越え…。 次に死亡・不詳の者( 赤 )の項目 大学 : 約2% 修士 : 約3% 博士 : 約9% です…。博士課程では卒業者のうち、約10人に1人が死亡・不詳ということに…。目を疑う数値です…。 最後に、博士課程だけですけど満期退学者について( 緑 ) 博士課程では通常、論文審査に通ると博士号を取得できます、確か。で何らかの理由で論文が通らない、もしくは書けなかったりした場合、卒業に必要な単位を取得していれば満期退学という扱いになります。 で、割合としては25%…。結構高い数値ですね…。 博士課程は通常3年間です。その間に博士論文を書き上げて博士号の取得を目指す訳なんですけど、博士号を取得できないってのは結構辛い…と思われます。 ボクのかなり身近なケースで満期退学の方がいますけど、博士号を取れなかったことを他の人に説明するとき(家族や親戚、就職の面接など)に 「3年間何やってたの?」 「博士号取れなかったんじゃ、3年間も無駄にしたわけだ」 「3年分働いていれば結構な収入になったのに…。」 などなど…。まぁ、彼も「自分で選んだ道だから、しょうがないよ…」と力なく語っていましたが…。 まぁ、なんといいますか、就職率や卒業時の年齢などを考えると、就職するなら修士の段階で行うのが無難そうです。博士課程まで行ってしまうと、よほどの実力がないと厳しい現状が待ち構えていますので…。

スポンサーリンク