2009-11-30

トレンドの推定

前回のデータに対していくつかのモデルを用いてトレンドの推定を行い、どのモデルを使うかという選択を行いました。

2009-11-26

Excel VBA入門

今日の内容

  • Excelの提出
  • Excelでプログラムを書く
今週は出張のため、この時間は自習となります。

課題提出

前回、前々回に作ったExcelのファイルを確認のために提出してください。
メールの件名は学籍番号と「Excel」、本文にリンクと経路、そして名前を書いてください。

Excelでプログラミング

Excelを使ってプログラムを作ることが出来ます。C言語などの入門としても役立ちます。Excelではプログラムのことを「マクロ」と呼んだりVBA(Visual Basic for Application)と呼んだりもします。

準備

左上の丸いボタンを押して、「Excelのオプション」をクリックします。そして「[開発]タブをリボンに表示する」にチェックをつけてOKを押します。

すると右端に「開発」が表示されるのでクリックして、マクロのセキュリティをクリックして、「すべてのマクロを有効にする」に●をつけてOKを押します。


これで、普通のパソコンなら準備は完了、なのですが、情報基盤センターでは「すべてのマクロを有効にする」に●をつけることが出来ません。仕方が無いので左上の「信頼できる場所」をクリックします。

「プライベートネットワーク上にある信頼できる場所を許可する(推奨しません)」にチェックをつけてから「新しい場所の追加」をクリックします。

「パス」欄の下の「参照」をクリックします。

Z:ドライブを選びます。

My Documentsを選びます。

「OK」を押します

パス欄がZ:\My Documentsになったことを確かめて、「この場所のサブフォルダも信頼する」にチェックをつけて「OK」を押します。

するとこの画面に戻るので「OK」を押して、これでやっと準備完了です。

マクロ入門

ではマクロでどんなことが出来るか見てみましょう。「マクロの記録」をクリックしてください。マクロの名前を聞かれますので、ここはそのままOKを押します。


何か適当にExcelの操作をしてください。ここでは1から5の数字を入力してみました。
そして、記録終了をクリックしてください。

すると、Excelは今の操作を全部覚えています。確かめるために、今入力したものを全部消してから、今度は「マクロ」をクリックしてください。するとどのマクロを実行するか聞かれます。今は一つしかないのでそのまま「実行」を押します。
すると、先ほど自分でやったことがそのまま繰り返されたはずです。


一体どんな仕組みになっているか見るために「Visual Basic」のボタンを押します。するとVisual Basicの画面が開くので、左側のModule1をダブルクリックするとこの画面になります。


先ほど「マクロの記録」をクリックしてから「記録終了」をクリックするまでの操作が全てプログラムに書かれたのです。今すぐ覚える必要はありませんが、ActiveCell.FormulaR1C1 = "1"は選択しているセルに1を代入しなさい、Range("A2").SelectはA2セルを選択しなさい、という命令です。

このように自分の操作をプログラムに記録するのではなくて、今度は自分でプログラムを書いてみましょう。今、人によって色々違うことを書いたと思うので、一旦Excelを保存せずに終了して、もう一度立ち上げて、先ほど同様「開発」をクリックして「Visual Basic」をクリックしてください。
プログラムを書く部分を用意したいので「挿入」をクリックして「標準モジュール」をクリックしてください。

現れた画面にプログラムを書きます。
まず
sub 練習
とだけ書いて、Enterキーを押してください。すると自動的に

Sub 練習()

End Sub

となり、カーソルは真ん中の空行にあります。そこに
cells(1,1)=1
と書いてください。これは上から1番目、左から1番目のセルに1を代入しなさい、という命令です。
プログラムを書いたら、上の右向きの三角をクリックしてください。するとさっきと同じように、どのプログラムを実行するか聞かれます。今は一つしか書いていないのでそのまま実行を押すと、A1セルに1が代入されます。Excelの画面で「マクロ」を押しても実行できます。

このプログラムを保存する時の注意。
左上の「上書き保存」を押すと、どの形式でファイルを保存するか尋ねられます。ファイルの種類として「Excelマクロ有効ブック」を指定してください。

さてこれでプログラムを書いて実行できるようになったので、具体的なプログラミングを始めましょう。
先ほどのCells(1,1)=1とEnd Subの間に
cells(2,1)=2
cells(3,1)=3
と書き込んで実行してみてください。
あるいは
cells(1,2)=-2
cells(1,3)=-3
と書いて、cellsの二つの添え字がExcelのどのセルに対応しているか確認しましょう。

次に10個続けて書いてみたいと思います。
cells(1,1)=1
cells(2,1)=2
cells(3,1)=3
cells(4,1)=4
cells(5,1)=5
cells(6,1)=6
cells(7,1)=7
cells(8,1)=8
cells(9,1)=9
cells(10,1)=10

と書くのは大変です。何か別の方法は無いでしょうか?このためにFor文というものがあります。

for i=1 to 10
 cells(i,1)=i
next i

と書くとiの値が1から10まで変化しながらcells(i,1)=iの部分が繰り返し実行されますので、10行書いたのと同じプログラムになります。

九九の表

今度はVisual Basicを使って九九の表を作りましょう。
For文を使うと
1
2
3
4
5
6
7
8
9
という表は作れると思います。同じような文をもう一度書くと
12
24
36
48
510
612
714
816
918
という表を作ることも出来るので、同じような文を9回書けば九九の表は出来るはずですが、それはあまりにも大変ですので、For文を上手に使って同じような文を9回も書かずに九九の表を作ってください。

2009-11-20

FastStone Image Viewer 4.0

パソコンでデジカメの写真などを表示するのに適したソフトです。

入手

FastStone Image Viewer, Screen Capture, Photo Resizer ...からダウンロードできます。
まずFastStone Image Viewer 4.0の「download」をクリックしてダウンロードページへ行きます。

exe downloadと書かれたものが一番無難です。これをクリックしてダウンロードしたファイルを実行するとインストールできます。

私はportable downloadの方をダウンロードしています。これだと自分で解凍したりショートカットを作る必要はありますが、それ以外にパソコンの環境を変更しないのが気に入っています。

使い方

起動すると左側にドライブやフォルダの一覧が表示され、その中から選んだフォルダの内容が右側に表示されます。右側から表示させたい画像をダブルクリックすると画面全体に表示されます。
でもいちいち選ぶのも面倒ですから、画像ファイルをダブルクリックしたらこのソフトが立ち上がるようにします。またこのソフトの長所である、画素数の大きなデジカメの画像をパソコンのディスプレイに綺麗に縮小して表示する機能も有効にします。
キーボードのF12を押します。あるいはメニューのSettingsからSettings F12を選びます。

左側上から4つ目のsmoothにチェックを入れます。すると右側にさらに詳しい設定項目が表示されます。

Filter:からLanczos3(slow)を選びます。

次にAssociationsをクリックして、JPG,JPE,JPEGにチェックをつけます。デジカメの写真は殆どがこの種類です。
そしてOKをクリックします。

この設定により、デジカメの画像ファイルをダブルクリックするとこのソフトによって表示されます。最初は少しギザギザしますけど、1秒くらい経って綺麗に縮小する計算が終わったらギザギザの無い画面に切り替わります。

MAK_KAWAさんのMy Digicams...は参考になる記述が多いです。時間があるときにじっくり読みたいので、アドレスを忘れないように書いておきます。

仮想CD/DVDソフトとして、Daemon toolsはバージョン4以降スパイウェアが同梱されるようになりました。インストールするときに入れるかどうか一応尋ねられますが、メッセージをちゃんと読まずに「次へ」ばかり選んでいるとインストールされてしまいます。Alcohol52%というソフトも、Daemon Toolsの作者が携わっているらしく、同じようにスパイウェアが入ります。
それでMagicISOを使ってみることにします。

GPSロガーとしてWBT-202を買おうかなと思っていましたが、ネットで評判を見るとTransystemのi-Blue 747 A+が良さそうです。
またニコンのデジカメに直付けするGPSとしてはニコン純正よりもnGPSの方が良さそうです。でもD90に繋ぐことに関しては、どちらもケーブルコネクタの形状的に扱いづらそうですから、やはり独立したGPSロガーで記録してパソコンでマッチングしたほうが良さそうです。

全然関係ないですが、
うっちーの時々かめらまん フィルムスキャナーの使い方(11)色補正
W-Zero3を無線LANルーターとして使って他のパソコンのインターネット接続に使えるZeroProxy
ビーチのすぐ隣の飛行場
アゴラ : 国は「ストック」も考えた総合的なリストラ策を策定するべきだ - 磯崎 哲也
ユニクロ祭りを見て「消費の変化」について考えてみた - G.A.W.

2009-11-19

Excelによる統計解析

今日の内容

  • GoogleMapの課題提出
  • Excelのグラフ作成
  • Excelによる統計解析
来週は出張のため、この時間は自習となります。

課題提出

Google Mapの使い方を見て何処か行ってみたい場所の
  • 地図を表示するためのリンク
  • 岡山大学からその場所への経路
をメールに書いて送ってください。
メールの件名は学籍番号と「Google map課題」、本文にリンクと経路、そして名前を書いてください。

グラフの作成

先週作った、中国地方の人口データの数値をグラフにして見やすくします。

Excelによる統計解析

統計学Iの講義では、やり方を説明しただけでした。Excelを使うと実際にやってみることが出来ます。

準備

左上の丸いボタンを押して、「Excelのオプション」をクリックします。そして左側の「アドイン」をクリックして、下の「管理:Excelアドイン」の横の「設定」をクリックします。

するとアドインの画面に切り替わるので「分析ツール」にチェックをつけてOKをクリックします。 「インストールしますか」と聞かれたら「はい」と答えます。

サンプルデータ

1変量データ2変量データ
120
106
112
168
120
140
160
160
116
118
104
172
130
124
134
142
112
112
110
120
134
136
138
144
120
120
160
108
140
98
142
130
138
126
108
120
136
118
118
122
128
124
110
134
116
138
116
158
106
166
118
158
124
124
110
166
132
126
122
132
生徒身長座高
115988
215084
315786
415381
515883
615285
715583
815783
914576
1015885
1116185
1215083
1314879
1415484
1515485
1615985
1714983
1815586
1915384
2016088

度数分布表とヒストグラム

1変量データをエクセルに入力します。キーボードから入力するか、あるいは上の表をコピーして、エクセルに貼り付けます。
Internet Explorerを使うときには「コピー」してからExcelで「貼り付け(P)」を選びます。

FireFoxを使うときは「貼り付け(P)」ではなく「形式を選択して貼り付け(S)」を選んで「テキスト」を選んでください。


次に、階級の境界の数字をC2セル以降に入力します。

右上の「データ分析」をクリックして「ヒストグラム」をクリックしてOKを押します。

以下のように入力してOKを押します。

OKをクリックすると度数分布表とヒストグラムが表示されます。

2変量の相関を調べる。

別のシートに切り替えて、2変量のデータをコピーします。
散布図を描きましょう。
(1)ワークシート例1.6を選択します。
(2) B2セルの上でマウスの左ボタンを押して、押したままC21セルまでマウスを移動させて左ボタンを離します。

(3) 上の「挿入」から「散布図」の「散布図(マーカーのみ)」を選びます。

すると図のような散布図が得られます。マウスを合わせるとそれが何番目のデータで、x,yの値が何であるか表示されます。

次に回帰直線をExcelに書いてもらいましょう。データ点のどれかにマウスを合わせて右ボタンを押して、表示されるメニューから「近似曲線の追加」を選びます。

「近似または回帰の種類」は「線形近似」を選び、また式も見たいので、「グラフに数式を表示する」にチェックをつけて、閉じるをクリックすると、回帰直線とその式が表示されます。
「近似または回帰の種類」を変更するといろいろな曲線が表示されます。

来週

出張のため自習とします。このブログを読みながら自習してください。

2009-11-16

先週のプログラムの修正

回帰を行うために、時間軸を標準化した行を付け加えました。

Sub 解析()
Dim 気温差の和(12), 年数(12), 気温差(12)

'一列に並べ替え
Sheets(2).Cells(1, 3) = "年"
Sheets(2).Cells(1, 4) = "月"
Sheets(2).Cells(1, 5) = "気温"
pointer = 1
For i = 2 To 120
  For j = 2 To 13
    If i < 120 Or j < 12 Then
      pointer = pointer + 1
      Sheets(2).Cells(pointer, 3) = Sheets(1).Cells(i, 1)
      Sheets(2).Cells(pointer, 4) = Left(Sheets(1).Cells(1, j), Len(Sheets(1).Cells(1, j)) - 1)
      Sheets(2).Cells(pointer, 5) = Sheets(1).Cells(i, j)
      Sheets(2).Cells(pointer, 2) = Sheets(2).Cells(pointer, 3) & "/" & Sheets(2).Cells(pointer, 4)
    End If
  Next j
Next i

'行番号を標準化
For i = 2 To pointer
  Sheets(2).Cells(i, 1) = 2 * (i - 2) / (pointer - 2) - 1
Next i

'移動平均により季節成分を除去
Sheets(2).Cells(1, 6) = "移動平均"
For i = 8 To 1421
  wa = 0
  For j = -5 To 5
    wa = wa + Sheets(2).Cells(i + j, 5)
  Next j
  wa = wa + (Sheets(2).Cells(i - 6, 5) + Sheets(2).Cells(i + 6, 5)) / 2
  Sheets(2).Cells(i, 6) = wa / 12
Next i

'季節成分を推定
For i = 1 To 12
  気温差の和(i) = 0
  年数(i) = 0
Next i
For i = 8 To pointer - 6
  気温差の和(Sheets(2).Cells(i, 4)) = 気温差の和(Sheets(2).Cells(i, 4)) + (Sheets(2).Cells(i, 5) - Sheets(2).Cells(i, 6))
  年数(Sheets(2).Cells(i, 4)) = 年数(Sheets(2).Cells(i, 4)) + 1
Next i
For i = 1 To 12
  気温差(i) = 気温差の和(i) / 年数(i)
'  Sheets(2).Cells(i, 7) = 気温差(i)
Next i

'気温差の偏りを調整
気温の差の和 = 0
For i = 1 To 12
  気温の差の和 = 気温の差の和 + 気温差(i)
Next i
For i = 1 To 12
  気温差(i) = 気温差(i) - 気温の差の和 / 12
'  Sheets(2).Cells(i, 7) = 気温差(i)
Next i

Sheets(2).Cells(1, 7) = "季節調整済気温"
For i = 2 To pointer
  Sheets(2).Cells(i, 7) = Sheets(2).Cells(i, 5) - 気温差(Sheets(2).Cells(i, 4))
Next i

End Sub

2009-11-13

応用経済時系列研究会「ブラック・スワンとどう向き合うか?」

2009年度 応用経済時系列研究会/東京リスクマネジャー懇談会
ジョイントパネルディスカッション
『ブラック・スワンとどう向き合うか?』
~金融危機後のリスク管理~

に参加してきました。

個人的に気になった点。(括弧内は私自身の注)

背景

  1. 金融工学により、一つのリスク資産を元にして、ハイリスク・ハイリターンな証券からローリスク・ローリターンな証券まで様々な金融商品を作ることが出来るようになった。
    商品のバリエーションが増えれば需要も増える。
    (元となったリスク資産を見て「もう少しリスクが高くてもいいから、もっとリターンが高い金融商品が欲しい」という人の希望に合わせることが出来ます)
  2. 流動化が進み、マーケットが拡大した。
    (決して一部の扇動的な解説本(not 解説書)にあるような「金融工学によってリスクが霧散して無くなった」と偽ったから売れたわけではありません)
  3. 信用創造が進んだ
  4. リスクテイクが増大した

金融工学の(使われ方としての)問題点

主観を客観的に見せかけることが出来る。
例:主観的に弾いたオプション価格からブラックショールズモデルでインプライドボラティリティを計算しておいて、「現在ボラティリティがこれくらいだから、このオプションの現在の価格なら売り(とか買い)」のように、いかにも客観的根拠があるかのように言える。
(去年の卒論でも、ブラックショールズ式を一通り勉強して、さあ計算してみようという段階になって、さてボラティリティとして何を使いましょう?と迷ったことがあります。特に去年10月から株価の変動が大きくなっているので、ヒストリカルボラティリティを計算するために、どれくらい前から現在までのデータを使うかによって、算出されるボラティリティが全然違いました。
「とりあえず250営業日(約1年)が使われるそうだから、それで計算してみたら」とは言ったものの、明日になれば「直近250営業日」の範囲から、変動の小さかった1年前のデータが一日分消えて変動の大きな最近のデータが入るので、今日明日何も無くてもヒストリカルボラティリティは上がることになります。まるで個人向けの株価チャート解説「あと何日の間に株価がxx円を超えられないと25日移動平均線がxx円まで下がってきて株価の頭を抑えて云々」のように、数日後の指標の推移が今現在までの数値だけでほぼ決まっていることを連想しました)

VaRの歴史と(使われ方としての)問題点

  • 元々、現在のポジションのリスクを、大雑把で良いから数量的に把握するために使われ始めた。
  • 現在のような厳密なリスク評価のために開発されたのではない。
    (理論の一つの応用としてVaRの推定を考えたことがあります。
    確かに1%VaR以上の損失が発生した頻度は1000営業日中10日で抑えられたのですが、その10日の損の中には1%VaRの2倍以上の損もあって、果たしてこれでリスク管理と言えるのだろうかと疑問に思ったことがあります)
  • 役員には基本的な正規分布ですら説明できないので「この方法での損失は、過去これくらいでした」というヒストリカルな説明しか出来ない(こともある?)
  • VaRはヒストリカルデータに基づいて計算する。
    つまりバックミラーを見ながら運転するようなものであって、前方を探知するレーダーではない。
    バックミラーも運転には必要だが、それを見るだけでの運転は危険。
    道が狭くなる、路面が悪くなるとスピードを落とすのは当たり前。VaRを過度に信頼して、それ以外の情報に注意しなくなるのは危険。

現場での、勝率の重要性

  • 例えば自分の計算では、100分の1の確率で200万円になり、100分の99の確率で無価値になるオプションがあったとします。自分の計算では、このオプションの期待値は2万円なのですが、市場では、多くの人が「200万円になる確率は200分の1しかない」と考えていて1万円で売買されていたとしましょう。
  • もし自分の計算が正しければ、理論的にはこのオプションを1万円で買うことは正しいです。期待値の半額で買えますし、損をしても1万円です。
  • ところがもし私が金融機関のトレーダーならば、この取引はすべきではありません。まず、大数の法則が働くほど、同様の取引が出来るとは限りません。100分の99の確率でこのオプションは無価値になりますので、数回の取引では購入したオプションの全てが無価値になる、つまり損を繰り返す確率は高いです。200万円になる確率が、皆が思っている倍であったとしても、それが実現する前に、繰り返し損をした無能者としてクビになります。
  • これがブラックスワンの著者タレプのように自分のファンドなら、100回150回と買い続けることで200万を得る確率は高いですが、雇われトレーダーではそこまで待って貰えません。
  • 雇われトレーダーにとっては、待ってもらえる間に利益を得るために、それなりに高い勝率が必要となります。

数値によるリスク制限ではなく人としてのリスクマネージャの存在意義

  • Scapegoatとして。問題が起こったときに責任を押し付ける役目として。
  • 業績評価としてはプットのショートみたいなもの。何かの問題が生じたときに一気に大きなマイナスになる(プットが欲しい人にとっては、売り手が居ないと困る)
  • リスクマネージャにとってのリスク管理は、常にアップデートされた履歴書を持ち歩くこと(笑)
  • As a Firefighterとして。問題が発生する前からリスク要因を見つめているので、対策する人としても適任。

ロスカットと仮説検定の類似性

ロスカットルール
損失がある程度大きくなったら、その取引を行う基となった考え方が間違っていると判断して、取引を終了し(最初に買ったのなら売る、ショートしたなら買い戻す)、損失を確定することでそれ以上の損の拡大を防ぐ。
仮説検定
ある仮説が正しいならば発生する確率が低く(例えば5%未満)、その仮説が正しくないならば発生する確率が高いことは実際に発生したならば、もとの仮説が間違っていたと判断する(棄却する)。(もとの仮説は正しいけど確率5%未満のことが発生したと考えるのではなく)
背理法(これ以降、私の補足)
ある仮説が正しいならば決して発生しないことが実際に発生したならば、もとの仮説が間違っている、と考えます。
「AならばB」+「Bでない」=「Aでない」
仮説検定と背理法の違い
仮説検定には「もとの仮説は正しいのに、本当に運悪く確率5%未満のことが発生してしまい、正しい仮説を間違えて棄却する危険」が5%存在します。背理法にはその危険はありませんが、「ある仮説が正しいならば決して発生しないこと」という関係が存在する場合しか使えません。
仮説検定と背理法の注意点
「(仮説検定で)仮説を棄却しなかった」「(背理法で)仮説を否定しなかった」ことは「仮説の正しさを証明した」のではなく、「棄却(否定)するに足る充分な証拠がなかった」に過ぎません。
「これまでに発見されたSwanは全て白かった」は「Swanは白い」の証拠になりません。(Swanの定義に「色は白い」が含まれてない場合)
個人的な驚き
ロスカットルールが有効であるのは、リスク資産の過去と将来の値動きに正の相関があり、損失が生じたポジションの今後の期待リターンが負であることが示された場合だけ、と思っていました。
「損失が生じたポジションの今後の期待リターンが負であること」を示すのではなく「損失が生じたポジションの今後の期待リターンが正である」ことを示せない限り、
・そのポジションが他の資産、他の場面と比較して大きなリターンをもたらすとは期待できず、
・そのポジションを立てた理由も否定されていて、
持ち続ける理由はない、と考えられます。

2009-11-12

Excelの使い方

今日の内容

課題提出

先週Wordのファイルを提出した時と同じ方法で、PowerPointのファイルをメールに添付して送ってください。
メールの件名は学籍番号と「パワーポイントのレポート」、本文には名前を書いてください。

Excelの使い方

情報基盤センター利用の手引き第2分冊の第3章を見て「3.2 表の作成」「3.3 表計算の実行」「3.4 グラフの作成」をやって見て下さい。

表の作成

この表を作成してください。
県名人口総数男比率女比率
鳥取294321
島根368402
岡山9391014
広島13981484
山口734817

表計算の実行

人口総数は自分で入力しなくても、既に入力されたデータから計算できます。鳥取の人口総数欄であるD2に鳥取の男性人数B2と鳥取の女性人数C2の合計ということで =B2+C2 と入力してください。
鳥取の男比率は鳥取の男性人数B2を鳥取の人口総数D2で割りますからE2に =B2/D2 と入力します。女比率F2は、割り算しなくても =1-E2 で求められます。

他の4県についても計算式を入力しますが、いちいち式を書くと面倒なのでコピーします。コピーのやり方は利用の手引きにも書いてありますが、実際に講義中にやりながら説明します。

グラフの作成

利用の手引きに書かれたグラフのほかにもいくつか試してみてください。

発展

中国地方5県全体の人口の合計を求めてみましょう。5つの足し算を =B2+B3+B4+B5+B6 のように書くと大変ですので、講義では関数の使い方を説明します。関数を使って合計を求めたら、同様に関数を使って平均、分散、標準偏差を求めてみましょう。

エクセルは単に表やグラフを書くだけでなく、様々な計算、データ処理が出来ますので、次回以降へ続きます。

Google Map

インターネット接続が改善されて、多くの人が同時に使っても大丈夫になったということですので、以前のページを見ながらGoogle mapをもう一度使ってみましょう。

自然と数理第三回

僕の担当分の最終回です。レポートの解説と試験です。

保健管理センターから以下のメールが届きました。
保健管理センターホームページに日々のインフルエンザ報告数のグラフを掲載しておりますが、11月9日集計では、この1週間の報告数は107人と激増し、総報告数は439人となりました。先週までは30人前後/週で推移しており、感染拡大が新しい局面に入った可能性があります。
つきましては、発熱学生は、登校しないように、講義・実習や部・サークル活動は積極的に休むように、ご指導を宜しくお願いします。当センターには今なお、「今日休んだら単位が貰えない」、「授業・実習は休めない」という発熱した学生が引き続いて訪れています。
感染拡大を防ぐためには、感染者が登校しないことが重要です。講義・実習等で、学生に「発熱があれば登校しないように」アナウンスしていただき、例えば「メールなどで発熱の連絡をすれば欠席とはカウントしない」など、担当教員の方の判断で、発熱学生が休み易いよう、何らかのご指導を宜しくお願いします。

この連絡に従い、欠席者に対しては、レポートの提出締め切り延長、試験に代えてレポート提出とします。

2009-11-09

季節性の推定と除去

今日の講義で示したプログラムです。岡山の観測開始からの毎月の値をsheet1のA1セルから貼り付けてあるとう前提のプログラムです。

Sub 準備()
Sheets(2).Cells(1, 2) = "年"
Sheets(2).Cells(1, 3) = "月"
Sheets(2).Cells(1, 4) = "気温"
pointer = 2
'For i = 120 To 2 Step -1
For i = 2 To 120
  For j = 2 To 13
'  For j = 13 To 2 Step -1
    If i < 120 Or j < 12 Then
      Sheets(2).Cells(pointer, 2) = Sheets(1).Cells(i, 1)
      Sheets(2).Cells(pointer, 3) = Left(Sheets(1).Cells(1, j), Len(Sheets(1).Cells(1, j)) - 1)
      Sheets(2).Cells(pointer, 4) = Sheets(1).Cells(i, j)
      Sheets(2).Cells(pointer, 1) = Sheets(2).Cells(pointer, 2) & "/" & Sheets(2).Cells(pointer, 3)
      pointer = pointer + 1
    End If
  Next j
Next i
End Sub

Sub 解析()
Dim 気温差の和(12), 年数(12), 気温差(12)
For i = 1 To 12
  気温差の和(i) = 0
  年数(i) = 0
Next i
'移動平均により季節成分を除去
Sheets(2).Cells(1, 5) = "移動平均"
For i = 8 To 1421
  wa = 0
  For j = -5 To 5
    wa = wa + Sheets(2).Cells(i + j, 4)
  Next j
  wa = wa + (Sheets(2).Cells(i - 6, 4) + Sheets(2).Cells(i + 6, 4)) / 2
  Sheets(2).Cells(i, 5) = wa / 12
Next i

'季節成分を推定
For i = 8 To 1421
  気温差の和(Sheets(2).Cells(i, 3)) = 気温差の和(Sheets(2).Cells(i, 3)) + (Sheets(2).Cells(i, 4) - Sheets(2).Cells(i, 5))
  年数(Sheets(2).Cells(i, 3)) = 年数(Sheets(2).Cells(i, 3)) + 1
Next i
For i = 1 To 12
  気温差(i) = 気温差の和(i) / 年数(i)
'  Sheets(2).Cells(i, 7) = 気温差(i)
Next i
気温の差の和 = 0
For i = 1 To 12
  気温の差の和 = 気温の差の和 + 気温差(i)
Next i
Sheets(2).Cells(1, 6) = "季節調整済気温"
For i = 1 To 12
  気温差(i) = 気温差(i) - 気温の差の和 / 12
'  Sheets(2).Cells(i, 7) = 気温差(i)
Next i
For i = 2 To 1427
  Sheets(2).Cells(i, 6) = Sheets(2).Cells(i, 4) - 気温差(Sheets(2).Cells(i, 3))
Next i

End Sub

2009-11-08

ImgBurnでBootable Disc

Windowsインストール用のBootable Discの作り方を調べました。
ほっと広島 » Blog Archive » SP3適用済みWindowsXP CDの作成方法が詳しいです。
ポイントは、ブートセクタのイメージファイルで
まず既存のBootable Discを入れてから、
ImgBurnをBUildモードにしてAdvancedのBootable Discで
Extract Boot Image
のところを使って読み込みます。
それをBoot Imageとして指定します。
その他の設定は
Make Image Bootableにチェック
Emulation Type:はNone
Sectors To Load:は4
次にAdvancedのRestrictionsのISO9660で
Folder/FIle Name LengthはLevel X - 219 Characters
Character SetはDOS
Allow More Than 8 Directory Levelsにチェック
Allow Files Without Extensionsにチェック
Don't Add `:1` Version Number To Filesにチェック

日本HP HP Technology at Work 2008年 9月号 - 知らないと損をする!アジアのビジネスマナー

2009-11-07

最上本山 御瀧 龍泉寺

最上稲荷のもうちょっと奥の龍泉寺へ行ってきました。

龍泉寺の案内。

入り口です。

鳥居をくぐったところ。既に紅くなっています。

地図の「現在地」付近です。これから右手の御滝へ降りていきます。

滝が見えてきました。

地図の駐車場、至杓子岩の方向の眺め。

今日は修行している人は居ませんでした。修行している人が居たら許可無く写してはいけません。

ここからさらに西の方に歩きます。

地図の千畳岩の近くですが、岩を見るのを忘れました。ここからぐるっと回って入り口に戻ります。

龍神之松。高いです。

本殿。

裏を回って龍王池に向かいます。

池の反対側に八大龍王があります。

八大龍王のところから、さっききた道を見たところ。

地図の宿坊の南側を通って戻りました。

大きな地図で見る