MUSYOKUTOUMEI

ライフ・デザイン・アクチュアリーのアナザーブログ

カテゴリ: IT

仕事柄、表形式のデータから特定の値を検索してそれに対応する値を抽出したいときにVLOOKUP関数をよく使います。以下のような感じですね。
1

ただVLOOKUP関数で検索できるのは1つの列だけで、複数の列を検索して対応する値を抽出することはできません。例えば以下のようなケースです。
2

こういう場面にはこれまでに何度も遭遇していましたが、調べてもやり方が分からなかったので、参照する元の表を加工して対応していました。上の例でいうと、
  • ポジションと評価のマトリクスにしてINDEX関数とMATCH関数を組み合わせる
  • ポジションと評価を"&"でつなげて1つの列に収めたうえでVLOOKUP関数を使う
といった具合です(1つ目の方法は参照する項目が3つ以上になると使えないですね)。

しかし今回いろいろ調べてみた結果、SUMPRODUCT関数を使うとそのままの形で抽出できることを発見しました。
3

数式を書き出すと、
=SUMPRODUCT((E2=A:A)*1,(F2=B:B)*1,C:C)
です。
※「=SUMPRODUCT((E2=A2:A11)*1,(F2=B2:B11)*1,C2:C11)」としても同じです。

SUMPRODUCT関数は、同じ行にある数値をすべて掛け合わせたうえでそれらを合計する関数ですが、それでなぜ抽出ができるのか、順を追って考えていきます。

まず、
=(E2=A2)
という数式を入力すると、「TRUE」という計算結果が表示されます。
4

TRUEは文字通り「真」という意味の論理値です。E2セルとA2セルに入力されているのはどちらも「M」で「E2=A2」という式は正しいので、TRUEという結果になります。これに対して、異なる値が入っているセルを=でつなげるとFALSE(偽)という結果になります。
5

そして、TRUEには1、FALSEには0という数値が割り当てられています。論理値に1を掛けることで数値に変換することができます。
6

次に、
=(E2=A2:A11)*1
という数式を入れてみると、自動的に下のほうにまで数値が表示されます(エクセルのバージョンによっては違うかもしれません)。
7

これはどいうことかというと、
=(E2=A2)*1
=(E2=A3)*1
=(E2=A4)*1

=(E2=A11)*1
の計算結果が上から順に表示されています。

つまり、
(E2=A2:A11)*1
という数式により10行分の値が計算されているということですね。

(E2=A:A)*1
だとA列のすべての行に対して計算が行われ、1行目が「0」、2~6行目が「1」、7行目以降は「0」となります。
(ただしこの数式を入れると表示しきれないので「#SPILL!」のエラーになります)

同様に、
(F2=B:B)*1
という数式ではB列のすべて行に対して計算が行われ、3行目と8行目が「1」、それ以外の行は「0」となります(F2セルと同じ「A」が入力されているのはB3,B8セルだけなので)。

ということは、120という結果を抽出した
=SUMPRODUCT((E2=A:A)*1,(F2=B:B)*1,C:C)
という数式は、以下のような計算と同じだということです。
8

A~C列のいずれかに0が入っている行は、掛け合わせれば必ず0になります。したがってA列とB列がともに「1」、すなわちポジションと評価が両方とも一致する行の評点が計算結果として出てくるというわけです。

では、評点の列に数字以外が入っている場合はどうしたらいいでしょうか。掛け算の中に数字以外のものが入っていると0になってしまうので、そのままの数式だと0となってしまいます。
11

そこで、まずC:CのところをROW(C:C)に置き換えます。これによってC列の値が行数に置き換えられるので、ポジションと評価が一致する行数である「3」の結果を得ることができます。
9

そしてこれをINDEX関数の中に入れてあげれば「カツオ」を抽出することができますね。
10

fish_katsuo

AFPに続いて、放送大学からも「情報学の新展開」のテキストが届きました。
DSC_0717

パラパラっとめくったところ、最近何かと話題のAI(人工知能)に関する記述がありました。
コンピュータ将棋の実力はプロ棋士のレベルに達していることが示された。これから数年はプロ棋士とコンピュータの対戦は勝ったり負けたりが続くであろうが、コンピュータ将棋が名人に勝つXデイが来るのはもはや時間の問題である。その日が来れば人工知能の例題としての将棋の役割は終了することになる。ゲームでは将棋の次の例題は囲碁ということになろう(コンピュータ囲碁もすでにアマの高段者の実力になっている)。

このテキストが発行されたのは2012年の3月、ちょうど4年前です。AlphaGoが世界トップレベルのプロ囲碁棋士を破る実力を持った今では、もやは時代遅れの内容になってしまっています。ITの世界の変化の速さを感じさせますね。

情報学の"新"展開というタイトルも色褪せた感がしてきましたが、10年やそこらでは決して変わらない、情報学における普遍的な「何か」があるはずだと思ってるので、それを学び取っていきたいと思います。

学習計画

例によって、目標から逆算してスケジュールを立てていきます。

単位認定試験は2016年7月22日(金)15時35分~16時25分。
AFPの提案書課題提出日~試験のちょうど間にあるのでいい感じですが、その前に6月7日(火)必着の通信指導問題があり、これを出して合格しないとそもそも単位認定試験を受けられません。

通信指導問題はすでに届いていて、記述式の問題4問のうち、2問について500字程度で解答することとなっています。

問題とテキストの対応を見たところ、全15章のうち8章までの範囲に対応しているようなので、とりあえずここまでの部分をひととおり読んで(聞いて)、5月31日までに答案を完成させようと思います。
3月25日:①情報学とその動向
4月1日:②情報処理技術とシステムの進展
4月8日:③人工知能の展開~歴史と概要~
4月15日:④人工知能の展開~実際の応用~
4月22日:⑤知能ロボットの展開
5月6日:⑥人間の認知作用と情報システム
5月13日:⑦情報と現実の融合
5月20日:⑧生命と情報
5月22日~31日:通信指導問題の答案作成

金曜の夜は情報学に45分、土曜の夜はAFPに1~2時間を割くイメージですね。

ちなみに、科目によっては通信指導問題の答案をインターネットで提出できるのですが、この科目はなんと対象外です(紙で郵送する必要あり)。

情報学の科目なのに…

最近は毎日更新しているこのブログ、公開と同時にFacebookとTwitterには自動で投稿される設定になっています。

Facebookは以前から使っていたので、どういう使い方(使われ方)をするのかというのがだいたいわかっていましたが、Twitterのほうは使い道があまりピンときませんでした。

ただ最近は、WEBの記事のメモとして使ったり、リアルタイムな情報を検索してみたりして、ちょっとずつ自動投稿以外の使用頻度も増えてきています。

そうなってくると、公開していいような短い内容を、FacebookとTwitterのどちらに投稿しようかということになるのですが、FacebookとTwitterには相互に連係機能があって、例えばTwitterに投稿するとその内容が自動的にFacebookにも投稿されるようにすることができます。

ただ、この1週間くらい、いろいろ設定をいじったりして試したところ、FacebookからTwitterへの連携と、TwitterからFacebookへの連携には違いがあることがわかりましたので、まとめておくことにします。

TwitterからFacebookへの連携

TwitterからFacebookへの連携はPCでTwitterにログインしたあと、設定画面からアプリ連携を選択し、「Facebookと連携する」ボタンをポチっとやればできます。

TwitterからFacebookへは全てのツイートが連携されるようで、ブログの記事公開を両方に投稿すると、さらにTwitterからFacebookにも投稿され、結果としてFacebookには同じ記事の投稿が重複してしまうことになります(文言はやや違うものになりますが)。

FacebookからTwitterへの連携

一方FacebookからTwitterへの連携はこちらのURLから設定することができます。
http://www.facebook.com/twitter/

ただTwitterからFacebookへの連携と違って、全ての投稿が連携されるわけではありません。まずFacebookへの投稿が「公開」の設定であることが条件です(Twitterに行ったら基本的に即公開ですから、この仕組みは当然ですね)。

さらに、公開の投稿であっても、例えばこのブログからの自動投稿はTwitterには連携されませんでした(なので先ほどと同じようにTwitterへの投稿が重複することはない)。

じゃあどんなときに連携されるかというと、短い内容を直接Facebookに打ち込んで公開設定で投稿したら、Twitterにも自動で投稿されていました。でも長い文章になるとダメですね。

1回にツイートできるのは140文字までなので、これより短い内容でないと連携されないようです。


…ということで、だいたい仕組みはわかったのですが、まだ試していないのが、両方向の連携をONにした状態で、Facebookに短い投稿をしたらどうなるかということ。

まずTwitterに連携され、そのあとFacebookに返ってきてそこで止まるような気がするんですが、またTwitterのほうに行ってしまうと無限ループに入ってしまうので、それはちょっと怖いなぁと。

でもこちらのサイトによるとそんなことにはならないようです。まぁそりゃそうですよね。

auを解約してmineoに乗り換えて3ヶ月たちました。

<過去記事>
Plan- 格安スマホ乗り換え計画
Do- スマホのお引っ越し

Plan - Do とくれば次はCheckということで、結果を振り返ってみます。

月額料金は5,000円減!

乗り換え前後の料金推移はこちら。

図1

12月は番号ポータビリティやmineoの初期費用が重なって一時的に負担が増えましたが、1月はau時代と比べて5000円以上減りました。僕は2年に一度の解約手数料のかからないタイミングを待って乗り換えましたが、これだけ減るなら2年縛りの解約手数料を払ってでも早めに乗り換えたほうがメリットがあるかもしれません。

スマホ代の節約に関してはとりあえず大成功です(^^)v

しかしデメリットもあります。

困ったことその1:電話が通じないことがある

スマホで電話する機会って実はそんなに多くなかったりするんですが、たまに電話かけたときに向こうの声は聞こえるけどこっちの声が向こうに聞こえてないということがありました。
通信状態はauのときよりむしろいいくらいで問題ないのですが、いざ電話したときに通じないことがあるというのはちょっと不安ですね。

困ったことその2:テザリングが使えない

これもそんなに機会はないのですが、スマホのテザリング機能を使おうとすると通信できなくなります。まぁこれは事前にmineoのサイトで対応機種を確認しておけばよかった話なんですが、僕の買った中古のスマホはテザリング対応外でした。

困ったことその3:カメラのピントが合わない

これはmineoに乗り換えたのとは無関係なんですが、乗り換えと同時に購入した中古スマホのカメラの調子がおかしくなってきました。具体的には、近くのものを撮ろうとしたときにピント調節がうまくできず、ぼやけた写真しか撮れません。

このブログに載せてる写真のほどんどはスマホでとってるので何とかしたいのですが、こういうときにauショップに持ち込んで修理を頼めないというのは不便ですね。
(まぁ持ち込んだところですぐには直らないと思いますが。)

メールはPCと一本化してスッキリ!

料金以外は全てデメリットかというとそんなことはなくて、乗り換えを機にスマホとPCのメルアドを一本化することができてスッキリしました。「@mineo.jp」というドメイン名で、アドレスもシンプルにできました。

IMAPという方式を使っているので、スマホで見てもPCで見てもメールはサーバーに残ったままです。ですので、どちらからでも届いたメールは全て見ることができます。ちなみにメールボックスの容量は5GB。メールの保存期間は無制限となっています。


…ということで、若干不便な面もありますが、基本的には快適に使っていますよ(^^)

最近パソコンを買い替えました。購入したのはこちら。



「キーボードとディスプレイが切り離せるやつがいいなー」と言っていたら、妻がこれを見つけてきたのであまり考えずに決めました。

新しいパソコンにデータを移して数日、前に使っていたパソコンはもともと調子が悪くなっていたのですが、ついに立ち上がらなくなりました。買い替えといてよかったー。

しかし値段が3万円台と安かったので、ふとOfficeが入ってないんじゃないかと思ってエクセルを開いてみると…

図1

「お、入ってんじゃん」と思いましたが、なんかちょっと違います。一見、ひととおりの機能がそろっているように見えますが、ところどころ、あるはずのもの、できるはずのものがありません。

昨日の記事にのせたようなグラフも一応作成することはできますが、データ系列を選択することができません。ファイルを保存しようとすると、「上書き保存」はありますが、「名前を付けて保存」がありません。どうもOneDriveというマイクロソフトのクラウドに保存される仕組みになっているようです。

このソフト、よく見るとExcel MobileというExcelとは似て非なるものでした。ワードやパワーポイントに関しても同様で、まとめてOffice Mobileというようです。使用している端末の画面の大きさによっても使える機能が異なるという、よくわからない仕様になっているようです(本当にややこしい「Office 2016」のライセンス)。

しかし当たり前のようにある/できると思ってたものがないと、とてもストレスに感じますね。ということで、普通に使えるOffice 2016 Soloを買っちゃいました。一度インストールしたらずっと使えるという買い切り方式ではなく、月額1000円程度の使用料方式です。

しかし使用頻度のあまり高くない自宅PCのOfficeソフトに月1000円というのは…うーん。最初の1か月は無料なので、その間にマイクロソフト以外のオフィスソフトも試してみようかと思います。

このページのトップヘ