2013/02/20

80までブログを続けたとして pt.2 (LINEST関数)

80までブログを続けたとして」の続きです。

最近のアクセス推移はこんな感じ
















以前はアクセス数をexcelで管理して、
その後自作プログラムを走らせていました。

しかし、同じ事がexcelの"linest"関数を使えばできるようです。
上の図の赤い線が実際の推移、緑色の線が実際の推移です。

linest関数は推定値と実際の数字の誤差(の二乗)が最小になるように、
y = ax + b の a と b を推定します。








使い方はこんな感じ。
=LINEST(実際のyの範囲, その時のxの範囲, bを0に固定しないか, 補足情報を出すか)

第3引数をTRUEにするとbの値が0以外をとるようになり、
第4引数をTRUEにするとF値やら自由度やらを返すようになる(らしいです)。

また、
LINEST関数は配列の形で答えを返します。
第1返値がa
第2返値がb
となるので、INDEX関数を使ってそれぞれ取得します。

細かいところは公式を読んでください。
http://office.microsoft.com/ja-jp/excel-help/HP005209155.aspx


2013/02/19

『みらくるは自分で起こすもの』


以前、星空文庫にあげていたものです。

----

目が覚めたら、4限が終わっていた。
3限の途中から小説を読んでいたところで記憶が切れている。
どうせ体育だったし、水泳だし、1回くらい別にかまわない。
教室の中が汗とスプレーのにおいでよくわからないことになっていた。

「なに授業サボってんだよ」
ああ、来たか。
私は何も答えない。何をしようが結末は同じだ。

いつもなら。

「黙ってんじゃねえ!」
あいつは私につかみかかってきた。どうせ次は、
「何とか言えつってんだろ!」
左フック。
その勢いで、私は近くの机に頭をぶつけた。
「痛っ……。」

あいつはライターを取り出してタバコに火をつけた。
この匂いは好きになれない。あと、のどが痛い。
「それでは第37回、がまん大会をはじめま~す!」
第37回じゃなくて第42回だよバカヤロウ。

周りはクスクス笑いながら、あいつの後ろへと移動していく
私はじりじりと後ろへ下がっていく。
机を押しながら。窓のほうへ。

気がついてみれば、私は窓と机を背にして行き止まり。
前を見ればクラスの全員があいつの後ろで笑っていた。

「それじゃいきま~す。」
あいつは火のついたタバコを近づけてきた。

刹那、タバコの火は激しく燃え上がり
その炎はあいつの服へと広がった。
私の手には、机の上にあったコールドスプレー。
騒然となる教室。

私は、机を踏み台にして窓から飛び降りた。
痛かった。
だけど、ひたすらに走った。

勝利の予感しかなかった。
結構燃えてたし、水泳の後だし、こんなご時勢だし。

校門の前に止めてあった自転車に飛び乗った。
誰かが追いかけてくる様子はない。
このまま行けるところまで行こう。
お金と体力の続く限り。

----

余談ですが、
この原理で隣の高校が物理的に爆発しました。

2013/02/02

Eclipse + processing + android の導入

processing on Eclipse でandroidアプリを作りたいが、
セットアップがうまく行かなかったので頑張ったというお話。

一言でこの記事をまとめると、

「android-core.zipをandroid-core.jarにリネームして、libsに入れればOK」

-----

もう少し詳しく説明する。

おおまかな流れ

基本的には、これの通りやれば動く。
http://niltoid.com/blog/processing-eclipse-android-proclipsoid/


英語を読みたくない人のために、ざっくり翻訳すると

  1. Android SDKをインストールする
  2. Eclipseをインストールする。API8のインストールを忘れずに。
  3. Eclipse ADT Pluginをインストールする
  4. AVDを作る。ヴァージョンは2.2にする
  5. EclipseでAndroid Applicationのプロジェクトを作る
  6. Eclipseのrun configurationの設定を、さっき作ったAVDが実行されるように変更する
  7. さっき作ったAVDが立ち上がることを確認する
  8. processingを落とす。1.5 stableじゃなくて2.04aを使う
    • (現在は2.07bが最新なので、こっちを使う)
  9. processing/modes/android/android-core.zipをeclipseのlibsフォルダへ入れる。
  10. 次のソースをコピペ
となっている。

ちなみに、
1~7の手順に関しては、
あたりが参考になる。
(他にもいろんな人がブログに書いている「android+eclipse」あたりで検索)


しかし、これだと
「unable resolve superclass」とかいうウォーニングが出て動かない。

そこで、次のような修正をする
  • 18行目"something.whatever"をちゃんと書く
  • android-core.zipをandroid-core.jarへリネームする
  • android-core.jarをlibsフォルダへインポートする

"something.whatever"をちゃんと書く

最初の記事のソースコード通りのパッケージ構造なら、
"com.example.helloandroid.HelloAndroidProcessing"にする

http://d.hatena.ne.jp/white_wheels/20100331/p2
の下の方のアプリケーションの作成という項目が、参考になる。

android-core.zipをandroid-core.jarへリネーム

特にいうことはない。
僕はこれのせいで動かず、6時間くらい悩んでいた。

android-core.jarをlibsフォルダへインポートする

これについては、最初の記事の執筆時とADTの仕様が変わったらしい。
いろんな人がこれでハマったらしく、多数のブログ記事がヒットする。
「Android+外部ライブラリ」で検索するといっぱい出てくる。