Excel一週間前に提示されたお題は、風向の時間的な内挿処理。下のような3時間ごとのデータがあったとして、間のコマをどう埋めるかという問題です。GSMやMSMは地上予測値が1時間ごとにあるのに対し、高層の予測値は3時間ごとしかありません。風向以外の気温や湿度、ジオポテンシャルなら、単純に内挿するだけ。風向にはほかの要素にはない問題が2つあります。一つは、風向は0度から360度で表しているので、360度より大きい値の処理が必要なこと。これは360より大きい値が出てきたら360を引くだけ、0より小さい値が出てきたら360を足すだけ。処理としては簡単です。一つはやっかいで、風向が時計回りで変わっているか、反時計回りで変わっているかの判別。風向が北から南に変わった時、北→東→南と変わったのか、北→西→南と変わったのか、データだけでは両者を判断できません。仕方がないので、前後の時間帯の風向差が180度より小さいほうを経由して・・・ということにしました。風向が北から南南東に変わった時は東成分の風向を経由、北から南南西に変わった時は西成分を経由・・・という意味。いうまでもなく、物理的には何の根拠もない決め打ちです。やっつけで作成したマクロはこんな感じ。「360より大きい値が出てきたら360を引くだけ、0より小さい値が出てきたら360を足すだけ」の処理が重複しているので、これをまとめればかなり短く出来そうですが、動いたので終了。'FTが3で割って1余る場合、差分の1/3を加える。'FTが3で割って2余る場合、差分の2/3を加える。無事、内挿されたようです。それにしても、これを組むのに1時間ぐらいかかるとは・・・。終わってみれば単純な話に思えますが、頭が固くなってきたということですね。きのう、Yahoo!のトップに、シフト制勤務、脳機能の低下と関連かという記事が載っていました。夜勤がなかったとしても低下は免れないのに・・・すでに手遅れです。***ブログ気持玉クリックして気持ちを伝えよう!ログインしてクリックすれば、自分のブログへのリンクが付きます。01:12風向急変で想い出しましたが、風向急変に対応するために、360度ではなく、540度を使う場合もあるそうです。要は360度(北)を超えて急変する場合にスケールアウト(0リセット)の問題をクリアーするための方法だそうです。風向急変を報じる場合、180度から40度に変わったとき、時計/反時計回りの区別が簡単に出来ないので、便宜上時計回りに急変したとして報じることがあるため。ここがいやらしいところなのですが、そこを検討する必要はあるかも知れません。一種のキメも必要ですが。そんな方法があるのですか。180度から40度に時計回りに変わった時は180度→400度と表すということですね。(あまりありそうにありませんが)400度(通常は40度)からSW(ふつうは225度)にさらに時計回りに変わった時はどうするのでしょうか。400度→585度だと540を超えてしまいます。400度を40度に仕切り直ししたうえで、40度→225度とするのでしょうか。00:50180度から時計回りに40度となった場合、360度を超えた場合の条件を入れてやるのがミソ。変化量を出すのか、急変後の向きを出すのかによっても変わりますが、いずれにしても360度を超えた時に限り条件を変える。元々は昔の自記風向風速計で風向をペン書きするとき、360度で描くだけでは、実際の風向きの変化が表現できなくなるために編み出された方法です。デジタルの数値だけでは風向急変が時計回りか反時計回りはすぐに判りませんが、540度にすることで見えてくると言うところです。22:22自記風向風速計のための方法ですか。それなら、私が先に書いた「仕切り直し」などは必要ないですね。数値ばかりにこだわりすぎていました。360では見えなくて、540で見えてくる・・というのは何だか深いです。***久しぶりに、謎の天気図。(WEAミ...昔、このブログで書いた3つの記事――。(新潮文庫)名前は知っていましたが、初めて買った柚木麻子。(岩...定価(本体630円+税)に対し、鉛筆で書いた450。(将...4日間の夜勤が終了。