そもそも論理関数ってなに?

おさ氏:どうもみなさん、こんにちは。「おさとエクセル」のおさです。今日は「論理関数」という言葉について、少し深掘りして勉強したいと思っています。「今日、なんかいつもと雰囲気ちゃうな」と思った方いるかもしれません。おそらくですね、3点違うことがあります。

1つはカメラの設定を変えたっていうのと、あと後ろの背景が違うっていうのと、あともう1つ、目の前にパソコンを用意してないという点です。「おまえ、エクセル教えるのに、なんでパソコン用意してねーんだ」と思う方いらっしゃると思うんですけれども、今日は口頭で、「論理関数ってなんなのか」というのを説明していこうと思ってます。

なんでこういうビデオを撮ろうかと思ったかっていうと、ちょうど今朝、僕の友達から1通のFacebookメッセージが入りました。彼が言うには、僕、この1週間で4つぐらい動画をポンポンポンと作ってきたんですが、このなかであんまり理解できない箇所があった、というわけですね。

理解できなかったことがなにかっていうと、簡単に言ったら言葉の定義なわけです。「論理関数って何?」とか、「論理式って何?」とか、「論理値って何?」、「引数って何?」みたいな、そういう類のものですよね。

そういうことについて、たぶん4つの動画で詳しいことを説明していなかったので、今回まとめてご説明しようかなと思ってます。この後、NOT関数とか、IF関数とか、AND関数とかNOT関数とかいろいろ組み合わせたかたちで勉強していくので、ここで一息入れるというか、しっかり理解を深めておこうかな、と思いました。

では、さっそく始めていきましょう。

で、そもそも論理関数とはなんなのか、っていう話からしていきます。論理関数っていうものは、ある条件が満たされているかどうかを判定してくれる関数のことを指します。

ある条件が満たされているかどうかをを判定する関数です。これを別の言葉で表現すると、論理値を返してくれる関数というふうに表現できます。

はい、出ましたね。「論理値という言葉はなんなのか?」と思いますよね。論理値というものは2つございます。簡単です。TRUEとFALSEです。

日本語で言うと、TRUEは「まこと」の真ですね。FALSEは「にせもの」の偽です。真偽を確かめてくれる関数、それが論理関数です。

ちょっとAND関数などを用いて説明していくと、例えば、AND関数っていうのは、以前説明しましたが、AかつB、条件Aと条件Bがともに成り立つ時に、TRUEという値を返す関数ですよ、というお話をしました。具体的には、例えば、条件1に「Aさんは男である」、条件2に「Aさんはファイナンス専攻である」、この2つの条件を2つとも満たされていたら、そのデータにTRUEという値を返してくれる、というような例を確か用いました。

ここに「おさ」というデータレコードがあったとすると、おさはこの両者とも満たしているんですね。おさは男である、かつ、おさはファイナンス専攻である、この2つを満たしているので、AND関数はTRUEという値を返してきます。

AND関数がどういうふうに指定するかというと、「=AND」で始めて、括弧で始めて、最後に括弧で閉じるんですね。その間、コンマで区切ったりするんですが、これら1つ1つのことを引数と呼びます。

引数っていう言葉は、正確な定義ではないんですが、エクセルのなかに含まれている関数すべて、例えば、日付と時刻の関数、あるいは統計の関数、これらすべての関数を使うなかで、括弧で始めて括弧で終わるという作業があるんですが、この括弧の中に含まれているものすべてを引数と呼ぶ、というふうに覚えておいてください。

で、引数のなかにもいろんなタイプの引数があって、論理関数の場合は、引数として論理式というものを指定することになります。「じゃあ、論理式ってなんなんだ?」っていう話になりますよね。

論理式ってなにかっていうと、さっき挙げた例だと「Aさんは男である」、この命題ですね。このステートメント、これ今、国語的な表現で示されているんですけれども、これを算数的な表現で言い直したものが、論理式と呼ばれるものになります。

具体的には、「Aさん=男性」みたいな感じですね。この「=」とか、そういう比較演算子と呼ばれているものを使って作る数式のことを論理式と呼びます。比較演算子については、また違う動画で説明していますので、しっかり覚えておいてください。

まあ、こういう感じですよね。たぶん今のですべてをカバーできたのかなと思ってます。論理関数は論理値を返す関数、論理値はTRUE and FALSE、これら2つで表現されるってことですね。TRUE、FALSEを返す関数があるけれども、その引数として指定するのは論理式と呼ばれているものですよ、というわけですね。

論理関数の全体像をつかむとこんな感じになるわけですけれども、一つひとつの関数がどんな時にTRUEを返してきて、どんな時にFALSEを返してくるのかっていうところを、私たちは今、一生懸命勉強してるわけです。

そういう感じですね。今日は以上です。どうもありがとうございました。