データの整合性
データセットを探索していると、データがどのように作成されたのか疑問に思うような点に出会うことがあります。たとえば、変数num_charはメール内の文字数(単位は千)を表すので小数になり得ますが、負の値にはならないはずです。
この変数が期待どおりに振る舞っているかを確認するテストは次のように書けます。
email$num_char < 0
このコードをコンソールで実行すると、データセット内の各ケースについて、その条件がTRUEかどうかを示す長い論理値ベクトルが得られます。ここでは、最初の1000個はいずれもFALSEのようです。すべてのケースでnum_charが非負であることを確認するには、このベクトルの「合計」をとります。
sum(email$num_char < 0)
これは便利なショートカットです。論理値に対して算術演算を行うと、RはTRUEを1、FALSEを0として扱います。ベクトル全体の合計が0であれば、データセットのすべてのケースでテストの結果がFALSEだった、つまりnum_char列は期待どおり非負の値のみを取っているとわかります。
この演習はコースの一部です
Rで学ぶ探索的データ分析
演習の手順
変数imageとattachを考えましょう。?emailで説明を読めますが、ヘルプは曖昧です。このデータセットでは、添付画像は添付ファイルとして数えられるのでしょうか?
画像が添付ファイルとして数えられるかを判定する簡単なテストを設計してください。2つの変数の値を比較する論理条件を作り、sum()でデータセット内のすべてのケースを評価します。論理演算子は、より小さいが<、以下が<=、より大きいが>、以上が>=、等しいが==であることを思い出してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Test if images count as attachments