読者です 読者をやめる 読者になる 読者になる

広告/統計/アニメ/映画 等に関するブログ

広告/統計/アニメ/映画 等に関するブログ

広告代理店の営業マンは何を売っているのか?

大手広告代理店の電通で新卒社員が過労自殺をしました。

その事件を受けて色々な人が”広告代理店が何故長時間労働しているのか?”について情報発信しています。 実態としてその通りな面はあると思いつつ、若干のミスリードもあると思っているので、自分なりの意見をまとめました。

広告代理店の実態を書いたブログエントリー

どちらも既に業界には居ない人ですが、レガシィな代理店はその頃から変化はなく、大枠の実態としてはその通りです

jnakagawa.blog.jp

monthly-shota.hatenablog.com

上記のエントリーはどちらも実態を把握しているものと感じます。

しかし、現場が日々目指している”ちゃんとした営業マンの営業スタイル”は必ずしもこのような世界ではありません。

特に、クライアントの言う通りに何もかもを調整して対応することは、クライアント・代理店そして発注先の媒体社や制作会社、全てに対して負の連鎖しか生みません。

人は一緒に乗り越えた苦労は覚えているがピンチを助けてくれたことは忘れがち

先輩であり上司である人に教えて貰った教訓です。

「あの時はピンチでしたね~」と苦労を共有して乗り越えた案件というのは、クライアントと広告代理店の絆を強くします。

一方で、値引きをしたり、今回だけ特別対応ですよ?と短納期で納入したり、と一方的に広告代理店及びその先の媒体社・制作会社側だけが苦労して対応した案件というのは、その瞬間は凄く感謝されますが、時間が経つと不思議と忘れられてしまいます。

それどころか

  • 「前回は、このスケジュールで何とかなったじゃないですか?なので今回も!」
  • 「前回のあの金額が残ってしまっていて、なかなか値上げをするには追加メリットがないと。。。」

などと最初から短納期が設定されたり、最初から低収益でスタートしてしまいかねないのです。

そもそも”値引き”も”短納期対応”も”とても失礼”である。

”値引き”は自社の利益を削って対応するのですから、自社が決断すれば誰にも迷惑をかけないと思いがちですが、

  • 定価で購入した別のクライアント
  • 商品価値を維持したい媒体社・制作会社

に対して失礼です。

もし同じ案件に対して、A社には値引きして売っていたのに、B社には値引きせずに利益確保していたことが、 何年も経った後でB社に情報が逆流したら、B社の宣伝部担当者はどう思うでしょうか?B社担当の営業マンはどう対処すればいいでしょうか?

”短納期対応”は、もっと失礼です。

広告代理店は自社で作業を解決することはできません。

”明日までに修正お願い!”と言われて、企画書の文言修正であれば広告代理店内で済む話ですが、グラフィック案の修正であれば外部のデザイナーが広告代理店のクリエイターのディレクションの後に徹夜で作業をしているのです。

広告代理店が売っているのは、”媒体・コンテンツ”と”人”である

広告代理店のビジネスは大きく2つに分かれています。

  • 広告媒体・タレント・キャラクター・イベントなど値段の決まっている媒体やコンテンツの代理販売
  • 社内のスタッフ・外部スタッフなど”人”

1つ目の説明は不要でしょう。2つ目について説明します。

ちゃんと商品が売れるような広告表現が出来る優秀なクリエイターの人生は限られています。彼等の貴重な仕事時間を色んなクライアントに切り売りするのが、営業マンのしていることです。

一般的商品に例えると

  • 仕事の出来るスタッフに効率的にアウトプットして貰う = 生産効率を上げる
  • 1回辺りのスタッフの仕事をできるだけ高く請求する = 商品単価を上げる

の2つを意識して会社に利益を残すことが営業マンの役割です。

日々どういう意識を持っているのか?

  • ほんとにその作業は今、依頼する必要があるのか?
  • この案件はスタッフの経歴として誇らしいものになっただろうか?
  • スタッフのした仕事をちゃんとクライアントに説明して評価して貰えたろうか?
  • このプロジェクトはちゃんと利益が確保できて、次回も継続できるだろうか?

などを考える必要があります。

利益を確保することはクライアントの為である

スタッフを効率的に回して利益確保することが会社のミッションであると理解している管理職は、利益の出ていないプロジェクトからスタッフを外し、時に担当の営業マンの数も減らします。

値引きに値引きを重ねてスタッフを安売りしてしまったプロジェクトは、人員不足になり最終的に崩壊し、その取引は終わります。

その時に広告代理店の営業マンは困りません。何故ならまた別のクライアントの仕事があるからです。

一方でクライアント側は、優秀なスタッフが抜けることでアウトプットのクオリティが下がりますし、最終的に広告代理店に請負うだけの人員が確保されない場合は取引を別の会社にゼロから委託せざるを得なくなります。

クライアントの伝書鳩な人は自分が可愛いだけ

人は誰かに頼られたり感謝されたりすることに快感を覚えるものです。 「今回はありがとう!」「お願いなんですけど。。。」と言われると、”頑張ろう!”という気持ちになります。

しかし動き出す前に、 その無理なスケジュールや予算を請けることが、”会社として正しいことか?”、”長期的にクライアントの為になっているか?”と一歩考えてから踏み出さないと何もかもが崩壊します。

電通で自殺者が出てしまった遠因を作ったのが、現場の誰かなのか?組織の構造的欠陥だったのか?いずれにしても、正常な営業スタイルは維持できていなかったということでしょう。

見どころが違うアニメ_『百日紅』_『花とアリス殺人事件』_『あしたのジョー2』_『君の名は。』_『ガールズ&パンツァー 劇場版』

ここ最近見たアニメで”夫々見どころが違って面白い”と思ったのでその感想です。 どれもいい作品だと想いますので気に入ったらいつか見て欲しいものばかりです。

ジャパニーズアニーションという感じがする『百日紅


『百日紅~MissHOKUSAI~』新予告60秒

”目に見えないモノ”の描き方が素晴らしい

予告編で良いシーンが既に幾つか抜粋されていますが、半透明の”妖怪”の動きや屏風の中の鬼の動きがリアルです。 また、龍・魂など”目に見えないモノ”を風の動きで表現するのもとても上手いです。 直接的表現を避けた方が味わい深く心にグッとくる時があります。

絵師の心構えが伝わる

”目に見えないモノ”の描写に力が入っているため、”目に見えないモノ”を描く絵師の物語が凄く印象に残るようになっていました。 ”龍は降りて来ないと描けない”という話や、絵の力で妖怪や病を抑えつけるといった話を全く信じていなくても、”いや、ひょっとしたらそういうことがあってもいいのではないか?”という気持ちになりました。 それ程、アニーションに説得力がありました。

原恵一監督の良さが一つ理解できたように思いました。

中学生の頃が思い出される『花とアリス殺人事件』


映画『花とアリス殺人事件』予告編

実写のようなカメラワーク

具体的にどう説明していいのかがわからないのですが、選ぶカットがどれも実写感があって、なるほどこういうアニメーションの使い方もあるんだな、という新鮮さがあります。

役者の演技のことを考えると演技のできる子どもを集めるのは大変なので、こういうアニメーションの活かし方もあるんだ!と思いました。

中学生ってこうだったよねの満載

学校の迷心を信じたり、ちょっと親の行動が恥ずかしいと思ったり、他にもっと良い解決があるのに自分達で遠くまで確かめに行こう!と盛り上がったり、”中学生ってこうだったよね”というシーンが盛り沢山です。

主人公は転校生なのですが、昔の顔見知り、よくわからない男子、変なきっかけで会話するようになった子、お隣さんetc色々な人と出会いつつ、誰かひとりと急に仲良くなるわけでもなくちょっとずつ距離を近付けて行くのが本当に中学生の頃のリアリティがあります。

とても懐かしい気分になったと共に、毎日が変化だったあの頃を忘れないようにしたいと思いました。

あしたのジョー2

あしたのジョー2 OP」で検索して下さい。そして第1シーズンのOPを見て下さい。

www.google.co.jp

衝撃的なカッコよさのOP

楽曲のイントロの渋さもたまらないのですが、この影絵のようなOPの一つ一つの動きをよく見て頂きたいのです。 殴られて顎が上がって元に戻る頭蓋骨と首の動きのリアリティ、影絵のランニングの動きのリアルさ、影絵であるだけに如何に動きが”本物っぽい”かがわかると思います。

ロシア・アヴァンギャルドドイツ表現主義が好きなのですが、この影絵・色使い・タイポグラフィの入り方、どれもかっこいいです。

ジョーを応援したくなる

暴力的なシーンは苦手なのですが、出崎統の描くボクシングのシーンは何故か熱い。動きの緩急にリアリティがあるのでしょうか。

力石を自分のパンチで殺してしまったトラウマをひきずって本気で殴れなくなったジョー、それを自覚し悔しがるシーンがシンプルに力強く描かれています。 余計なお涙頂戴シーンではなく、本気の一発、殴られて今にも死にそうな相手、その姿をみての嗚咽、”ジョー!頑張れ!”と思わず叫んでしまう。 80年代のお茶の間で流れていたんだなというTVシリーズならではのドラマ感。

よく考えると毎週30分、小難しい話もなく、プロボクサーの話だけで引っ張るって凄いことだと思いませんか?

CGかのような滑らかな動き『君の名は。


「君の名は。」予告

OPからテンションがあがる動き

背景が動いているのに人物も動いていて、アニメの絵が動いているのではなく、アニメーションの世界の中でカメラが動いているような滑らかな動き。 それだけで興奮してしまいますし、OPでその山場があることで、”いや、これはもう傑作でしょ!”と期待値がグッと上がりました。

音と映像のタイミングがあっている

タイアップアーティストの歌唱が大きい、というレビューもありましたが、この映像と音のタイミングの快感は最高だと思います。 監督の過去作品『秒速5センチメートル』でも桜と山崎まさよしの歌がよくあっていましたが、今回も最高のシーンでした。

”音響”が素晴らしい『ガールズ&パンツァー 劇場版』


ガールズ&パンツァー 劇場本予告

音がズッシリ来る

音響監督がよくツイートしていますが、ガルパンはとても音に拘っています。 爆発音がガンと響いて来ます。映画は、音・映像・脚本etcと色々な要素に分解できますが、”音”の良さも味わって欲しいです。

爆音上映をやっている間にいつか立川に行きたいですね。 (いつも満席ですが)

友情と勝利

ジャンプの努力・友情・勝利ほど上手く物語のポイントを掴んだ言葉はないでしょう。 本作も、仲間と共にピンチを協力して乗り越える、熱い友情の連続でした。

戦車を退避させなければならないシーンがあるのですが、そこでの協力プレーが涙モノです。 どうせ美少女ものなんでしょう?と思っていたら損をするスポ根アニメです。


君の名は。』の関連商品のオススメ

Walkerや公式ガイドブックなど色々ありますが、本作の映像的な秘密を知りたい人は、

CGWORLD (シージーワールド) 2016年 10月号 [雑誌]

CGWORLD (シージーワールド) 2016年 10月号 [雑誌]

を買うと良いと思います。

あのCGなのか?というシーンでは実は一度3dCGでカメラワークを作って吐き出した絵をベースに美術発注しているのです。 とてつもない作業だと思いますが、結果、拘るのであれば最初からそうする方が早いのだとか。。。 その他、なるほどね!という話が一杯だったので、書店でもKindleでもこれは買いです。


紹介作品一覧

アニメの楽しみ方、受け取り方は人それぞれ。 もっと色々な楽しみ方を勉強して理解の幅を広げたいです。

【備忘録】Markdownとreveal.jsでプレゼン資料を作ってみる

先般Markdownが如何に便利かというエントリーを書きました。

yyhhyy.hatenablog.com

これだけも充分なのですが、最近流行りのHTML形式へのプレゼンも簡単にできることを知ったので、メモ。

reveal.jsを導入する

色々なサイトを参考にしましたが、素人にはどれも難しく、、、このサイトをとても参考にさせて頂きました。

qiita.com

先ずはこちらで「Basic setup」の方をダウンロードし解凍します。

github.com

導入は以上です。

HTMLを直接編集する

これが最初わからなかったのですが、HTMLファイルでプレゼンするのですからHTMLファイルを直接編集すればいいのです。

リンクで参照するので解凍したフォルダ内から移動させずに作業します。

「index.html」を好きなファイル名に変更し、それをテキストエディタで編集します。

markdown用の記述

「div class="slides"」の後ろ変更します。Markdownだよ、ということや、ページ区切りの文字は「(改行)---(改行)」にするよ!といったことを記述します。

コピペ時の注意事項はこちらを参考にしました。

qiita.com

<div class="reveal">
    <div class="slides">
        <section data-markdown
                data-separator="^\n---\n$"
                data-separator-vertical=">>>$"
                data-vertical="^\n--\n">
            <script type="text/template">
  ~ここに本文~
            </script>
    </div>
</div>

本文のところに丸っとMarkdown記法で書いた本文をコピペします。

注意

Markdownファイルを呼びこむこともできますが、それにはサーバーの設定が必要なので、とても面倒そうでした。そこまでするなら、コピペでも良いかなと想います。

デフォルトでのプレゼン

ブラウザでHTMLファイルを開くとプレゼンテーションになります。

デフォルトのテーマで作るとこのような感じです。「→」のキーでページをめくれます。

f:id:yyhhyy:20160911203002j:plainf:id:yyhhyy:20160911203009j:plainf:id:yyhhyy:20160911203015j:plain

好き嫌いあるかもしれませんが、個人的には好きなテイスト。きっといじればフォントサイズも調整できるのでしょう。

縦方向のスライド

HTMLファイルでのプレゼンの醍醐味は縦方向にもいスライドすることなのですが、何故か私、上手くいきませんでした。。。 *1 こちらのサイト yoghurt1131.hatenablog.com の通り

data-separator-vertical=">>>$"

とすれば下方向へスライドできます

PDFにする

PDFにすることも簡単です。

HTMLをブラウザで開き、URLの所を書き換えます

f:id:yyhhyy:20160911203158j:plain

f:id:yyhhyy:20160911203520j:plain

「#」の前に「?print-pdf」を入れます。

この段階ではレイアウトが崩れますが、Google ChromeのPDF保存機能でPDFにすれば、綺麗なPDFになります。

PDFからPowerPointにする

これは前回 MarkdownのWordにもPowerPointにもなる汎用性の高さに感動 - 広告/統計/アニメ/映画 等に関するブログ と手法は同じです。

無事、PPTにできるので、誰とでも共有できるわけですが、残念ながら微妙に使いづらいところは使いづらいです。

f:id:yyhhyy:20160911204006j:plain

その他

もっとReveal.js自体の勉強をしたら面白いプレゼンが出来そうです。

そもそもPowerPointでプレゼンする必要性などないのですから。

yoghurt1131.hatenablog.com

*1:2016/9/22更新。

【備忘録】Rで矢印のグラフを描く

グラフにこんな矢印を入れたい時ってありますよね? f:id:yyhhyy:20160827192859p:plain これは、因子分析をした時のプロットをイメージしています。

色々と調べた結果をデータの準備からプロットまで手順を追ってメモをしておきます。

データの準備

それっぽいデータを乱数で用意

取り敢えず正規分布の乱数を作成。

平均を0、分散を0.5として7つずつ

set.seed(123)
mr1 <- rnorm(7,mean = 0,sd=0.5)
mr2 <- rnorm(7,mean = 0,sd=0.5)

それっぽいイメージ項目の文字列を作成

names <- c("美しい","賢い","派手な","高貴な","個性的な","明るい","温かい")

データフレームを用意してdplyrのbind_colsを使ってデータフレームを作ります (別にcbindでも同じことです)

res <- NULL
res <- as.data.frame(res)
library("dplyr", lib.loc="C:/hogehoge/R-3.2.3/library")
res <- bind_cols(as.data.frame(mr1),as.data.frame(mr2))
res$names <- names

結果、このようなデータを用意しました

mr1         mr2    names
1 -0.28023782 -0.63253062   美しい
2 -0.11508874 -0.34342643     賢い
3  0.77935416 -0.22283099   派手な
4  0.03525420  0.61204090   高貴な
5  0.06464387  0.17990691 個性的な
6  0.85753249  0.20038573   明るい
7  0.23045810  0.05534136   温かい

矢印をひく為のデータを用意

このサイトを参考にしました。

5 functions to do Principal Components Analysis in R · Gaston Sanchez

矢印には出発点とゴール地点とがあります。その値を持ったデータフレームを別途用意すれば良いのです。

arrowsという名称でデータフレームを用意します。

x1,x2が出発点なので"0"。今回のデータのレコード数をnrowで確認して、必要な数だけの0を並べます。 y1,y2はゴール地点なので描画するデータの値と同じです

arrows <- NULL
arrows <- as.data.frame(arrows)
x1 <- rep(0,nrow(res))
y1 <- rep(0,nrow(res))
arrows <- bind_cols(as.data.frame(x1),as.data.frame(y1))
x2 <- res$mr1
y2 <- res$mr2
arrows$x2 <- x2
arrows$y2 <- y2

こんなデータになります

x1 y1          x2          y2
1  0  0 -0.28023782 -0.63253062
2  0  0 -0.11508874 -0.34342643
3  0  0  0.77935416 -0.22283099

ggplotで描く

ggplotの描画範囲を大きくする

グラフの端で文字が消えないよう、x軸 y軸の最大値・最小値を少し大きめに取ります。

有効数字3桁として、0.1だけ絶対値を大きくとりました。

a <- round(max(res$mr1,res$mr2),3) + 0.1
b <- round(min(res$mr1,res$mr2),3) - 0.1

ベースの値をプロット

先ずはデータの値(今回は因子分析の因子負荷量をイメージしています。)をgeom_pointで、質問項目名をgeom_textで、先ほど決めたグラフの軸の値でxlim,ylimで指定します

g <- ggplot(data=res,aes(x=res$mr1,y=res$mr2))
g <- g + geom_point()
g <- g + geom_text(aes(x=res$mr1,y=res$mr2),label=res$names,vjust=-1)
g <- g + xlim(b,a)
g <- g + ylim(b,a)
plot(g)

するとこんなグラフになりますが、ちょっと見辛いです。

f:id:yyhhyy:20160827194219p:plain

縦横の比率を同じにする

グラフの描画エリアが正方形であって欲しい場合があります。今回は、縦も横も因子負荷量ですから、同じスケールでないと正確にイメージできない可視化となってしまいます。

こちらのサイトを参考にしました。

ggplot2: きれいなグラフを簡単に合理的に - Watal M. Iwasaki

g <- g + coord_fixed(ratio=1)

を加えます。

また、負の値を取りますので、0の場所にx軸、y軸の軸がありません。 そこで、0の水平線と垂線を引いて見やすくします。色もブルーにしてみました。

g <- g + geom_hline(yintercept = 0,color="blue")
g <- g + geom_vline(xintercept = 0,color="blue")

これでかなり見やすくなりました。

f:id:yyhhyy:20160827194835p:plain

いよいよ矢印を引きます

こちらのサイトを参考にしました。

ggplot2 Quick Reference: geom_segment | Software and Programmer Efficiency Research Group

geom_segmentという関数を使って、先ほど作った矢印用のデータフレームarrowsを対象データとして使います。arrow=arrow()で直線が矢印に変わります。

今回は太さを1にし、色をグレーにしてみました。

g <- g + geom_segment(data=arrows,aes(x=x1,y=y1,xend=x2,yend=y2),colour="gray65",arrow=arrow(),size=1)

f:id:yyhhyy:20160827195149p:plain

細かいこだわり

よくみると矢印が青い線の上に乗っかって青線が消えています。ggplotはグラフのデータにどんどんレイヤーを上乗せしていくので、上のレイヤーにしたデータは後で加えないと行けません。 ですので、geom_vlineとgeom_hlineは後ろに順番を入れ替えるべきです。

また、x軸、y軸の目盛りも黒文字の方が読み易いでしょう。

その結果のグラフが最初のグラフのです

f:id:yyhhyy:20160827192859p:plain

全てのコード

set.seed(123)
mr1 <- rnorm(7,mean = 0,sd=0.5)
mr2 <- rnorm(7,mean = 0,sd=0.5)
res <- NULL
res <- as.data.frame(res)
library("dplyr", lib.loc="C:/hogehoge/R-3.2.3/library")
res <- bind_cols(as.data.frame(mr1),as.data.frame(mr2))
res$names <- c("美しい","賢い","派手な","高貴な","個性的な","明るい","温かい")
arrows <- NULL
arrows <- as.data.frame(arrows)
x1 <- rep(0,nrow(res))
y1 <- rep(0,nrow(res))
arrows <- bind_cols(as.data.frame(x1),as.data.frame(y1))
x2 <- res$mr1
y2 <- res$mr2
arrows$x2 <- x2
arrows$y2 <- y2
library("ggplot2", lib.loc="C:/hogehoge/R-3.2.3/library")
a <- round(max(res$mr1,res$mr2),3) + 0.1
b <- round(min(res$mr1,res$mr2),3) - 0.1
g <- ggplot(data=res,aes(x=res$mr1,y=res$mr2))
g <- g + geom_point()
g <- g + geom_text(aes(x=res$mr1,y=res$mr2),label=res$names,vjust=-1)
g <- g + xlim(b,a)
g <- g + ylim(b,a)
g <- g + coord_fixed(ratio=1)
g <- g + geom_segment(data=arrows,aes(x=x1,y=y1,xend=x2,yend=y2),colour="gray65",arrow=arrow(),size=1)
g <- g + geom_hline(yintercept = 0,color="blue")
g <- g + geom_vline(xintercept = 0,color="blue")
g <- g + theme(axis.text.x=element_text(angle=0,colour="black",size=12,hjust=1))
g <- g + theme(axis.text.y=element_text(angle=0,colour="black",size=12))
plot(g)
ggsave(plot=g,file="20160830.png",dpi=300,width=4,height=1.5,scale=3)

【備忘録】交互作用プロットをggplot2で描く

今読んでいる本に「交互作用プロット」というものが出てきました。

マーケティング・データ分析の基礎 (シリーズ Useful R 3)

標準で入っている関数を使っていたので、せっかくならggplot2で描いてみようと思いました。

今回は、そのメモになります。

交互作用プロットとは?

交互作用プロットの例

2つの因子が存在した時に、片方の因子をx軸で、もう片方の因子をグラフの種類(色分け、点線/棒線等)で分けるというものです。

y軸は、平均値をプロットするそうです。

f:id:yyhhyy:20160821153620p:plain

今回始めてみましたが、慣れないとちょっと見辛いですね。

交互作用について

見方や説明の詳細はこちらを参考にして下さい。

7.3 交互作用とは?

statsbeginner.hatenablog.com

  • 折れ線が並行かどうか ⇒ グラフの種類で分けた因子に効果がないか?あるか?
  • 左右で上下があるかどうか ⇒ x軸で分けた因子に効果があるかないか?

ということになります。

標準のグラフで描く

データの準備

このグラフはRのデータセットの中の「ギニアピッグの歯の成長に対するビタミン C の効果」のデータを使っています

len supp dose
1  4.2   VC  0.5
2 11.5   VC  0.5
3  7.3   VC  0.5

「ビタミン C の投与量」(dose)は、(0.5mg,1mg, 2mg)の3種類ありますので、今回の作図の都合により1mgだけ除きました

library("dplyr", lib.loc="C:/hogehoge/soft/r/R-3.2.3/library")
df <- ToothGrowth %>% filter(dose==c(0.5,2))

また、「ビタミン C の投与量」(dose)は数値データなので因子(factor)に変換しておきます

df$dose <- as.factor(df$dose)
str(df)
'data.frame':  20 obs. of  3 variables:
 $ len : num  4.2 7.3 6.4 11.2 5.2 18.5 25.5 32.5 21.5 29.5 ...
 $ supp: Factor w/ 2 levels "OJ","VC": 2 2 2 2 2 2 2 2 2 2 ...
 $ dose: Factor w/ 2 levels "0.5","2": 1 1 1 1 1 2 2 2 2 2 ...

標準の関数で描く

先ほどの本で紹介されていたinteraction.plot関数を使うと、先ほどのグラフになります。

interaction.plot(df$dose,df$supp,df$len,xlab="ビタミン C の投与量",trace.label="摂取法",ylab="造歯細胞(歯)の成長量")

ggplot2でやってみる

せっかくなら美しいggplot2で描いてみたいものですね。

データの準備

ggplot2の場合は、まずデータの集計が必要です。平均値をプロットするのですから、dplyr/reshape2で集計は簡単です。

先ずはデータを一度分解し、

library("reshape2", lib.loc="C:/hogehoge/r/R-3.2.3/library")
df_m <- melt(df,id.vars = c("supp","dose"))
head(df_m)
supp dose variable value
1   VC  0.5      len   4.2
2   VC  0.5      len   7.3
3   VC  0.5      len   6.4

平均値に集計しなおします。dcastの際にmeanを使います。

df2 <- dcast(df_m,supp+dose~variable,mean)
(df2)
supp dose   len
1   OJ  0.5 14.40
2   OJ    2 26.42
3   VC  0.5  6.86
4   VC    2 25.50

確かにこの表だけではちょっとイメージがつきにくいのかもしれません

ggplot2で描く

なお、ggplot2は非常に優秀なので、連続データでもないものを棒グラフで結ぶことを良しとしません。 そのためそのままgeom_lineと書くだけではエラーになってしまいます。

geom_path: Each group consists of only one observation. Do you need to adjust the group
aesthetic?

なので、無理矢理「supp」(摂取法)をグループだと認識させます。

g <- ggplot(df2,aes(x=dose,y=len,color=supp,group=supp))
g <- g + geom_line(size=2)
g <- g + theme(axis.text.x=element_text(angle=0,colour="black",size=12,hjust=1))
g <- g + theme(axis.text.y=element_text(angle=0,colour="black",size=16))
plot(g)
ggsave(plot=g,file="20160821_2.png",dpi=300,width=4,height=3,scale=2)

するとこのようなグラフになりました。

f:id:yyhhyy:20160821155541p:plain

標準の関数はもっと長体がかかっているようなので、印象を併せる為にもう少し横長にしてみました。

ggsave(plot=g,file="20160821_3.png",dpi=300,width=4,height=1.5,scale=2)

f:id:yyhhyy:20160821155854p:plain

分散分析もしておく

先ほどのデータで交互作用の有無を分散分析で確認しておきます

res <- aov(len~supp+dose+supp:dose,data=df)
summary(res)
Df Sum Sq Mean Sq F value   Pr(>F)    
supp         1   89.5    89.5   5.748   0.0291 *  
dose         1 1175.0  1175.0  75.493 1.87e-07 ***
supp:dose    1   54.8    54.8   3.519   0.0790 .  
Residuals   16  249.0    15.6                     
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1

supp=摂取法 及び  dose=ビタミンCの投下量 については、5%の有意水準で”同じである=効果がない”という帰無仮説は棄却されます。

しかし、supp:dose=摂取法と投下量の交互作用 については、5%以上なので、”同じである=効果がない”ということは、”滅多にないことではない”ので、 交互作用があるとは言い難いようです。

データセットについて

余談ですが、こういう練習用のデータについてなかなか手元にドンピシャなものがないものです。

d.hatena.ne.jp

こういうまとめは本当に助かります

箱ひげ図とバイオリンプロットの印象の違い

データの可視化に於いて重宝されるグラフの一つに「箱ひげ図」というものがあります。

箱ひげ図 - Wikipedia

データの四分位点、中央値、最大値、最小値を記載するのでデータの分布が一覧できるというものです。

しかし箱ひげ図には重大な問題があります。

先ずはプロットしてみる

Rがあれば誰でも持っているアヤメのデータを使います。 ”がく”の長さを取り出して箱ひげ図にしてみます。

f:id:yyhhyy:20160820201652p:plain

当然、最大値と四分位点、最小値と四分位点の間にもデータはあるのですが、箱が四分位点で終わってしまっているため、あたかもそこにはデータが無いような印象ではないでしょうか?

そこでバイオリンプロット

そんな箱ひげ図よりも便利な図としてバイオリンプロットというものが存在します。

f:id:yyhhyy:20160820202436p:plain

ヒストグラムを縦にしたようなもので、これであればデータの凡その分布もわかります

箱ひげ図と比較してみる

こちらのサイトを参考にさせて頂きました。

バイオリンプロットの中にボックスプロットを入れると、より情報量が増えますね。

sugioka.wiki.fc2.com

f:id:yyhhyy:20160820202041p:plain

今回のコード

データの集計まで

ggplotで描けるようにreshapeパッケージでデータを変更

library("reshape2", lib.loc="C:/hogehoge/r/R-3.2.3/library")
iris_m <- melt(iris,id.vars = c("Species"))

こんな感じになります

Species     variable value
1  setosa Sepal.Length   5.1
2  setosa Sepal.Length   4.9
3  setosa Sepal.Length   4.7
4  setosa Sepal.Length   4.6
5  setosa Sepal.Length   5.0
6  setosa Sepal.Length   5.4

そのうち”がく”(=Sepal)のデータだけをdplyrのfilter関数で抜き出します

library("dplyr", lib.loc="C:/hogehoge/r/R-3.2.3/library")
iris_m_sl <- iris_m %>% filter(variable==c("Sepal.Length"))

tailで後半のデータを確認するとSepal.Lengthだけになっているのがわかります

Species     variable value
145 virginica Sepal.Length   6.7
146 virginica Sepal.Length   6.7
147 virginica Sepal.Length   6.3
148 virginica Sepal.Length   6.5
149 virginica Sepal.Length   6.2
150 virginica Sepal.Length   5.9

ボックスプロット

ggplot2のgeom_boxplotを使います。 また先ほどのサイトを参考にして、平均値もサークルでプロットしておきます。

library("ggplot2", lib.loc="C:/hogehoge/r/R-3.2.3/library")
iris_m_sl_g2 <- ggplot(iris_m_sl,aes(x=Species,y=value,color=Species,fill=Species))
iris_m_sl_g2 <- iris_m_sl_g2 + geom_boxplot(color="black")
iris_m_sl_g2 <- iris_m_sl_g2 + stat_summary(fun.y=mean,geom = "point", fill="white",shape=21,size=3) 
iris_m_sl_g2 <- iris_m_sl_g2 + theme(axis.text.x=element_text(angle=0,colour="black",size=12,hjust=1))
iris_m_sl_g2 <- iris_m_sl_g2 + theme(axis.text.y=element_text(angle=0,colour="black",size=16))
plot(iris_m_sl_g2)
ggsave(plot=iris_m_sl_g2,file="iris_m_sl_g_1.png",dpi=300,width=4,height=3,scale=2)

バイオリンプロット

バイオリンプロットはgeom_violinです。

デフォルトでは横幅が調整されてしまうので、データ量も比較したい場合は、scale="count"としておくと良いようです。

library("ggplot2", lib.loc="C:/hogehoge/r/R-3.2.3/library")
iris_m_sl_g <- ggplot(iris_m_sl,aes(x=Species,y=value,color=Species,fill=Species))
iris_m_sl_g <- iris_m_sl_g + geom_violin(scale="count")
iris_m_sl_g <- iris_m_sl_g + theme(axis.text.x=element_text(angle=0,colour="black",size=12,hjust=1))
iris_m_sl_g <- iris_m_sl_g + theme(axis.text.y=element_text(angle=0,colour="black",size=16))
plot(iris_m_sl_g)
ggsave(plot=iris_m_sl_g,file="iris_m_sl_g_2.png",dpi=300,width=4,height=3,scale=2)

みんなのR

バイオリンプロットの方が情報量が多いよ!という話は、

で指摘されていました。

箱ひげ図が先に広がってしまったためにバイオリンプロットは余りメジャーではないようですが(見た目も少し気持ち悪いですし) 誤った印象を与えないという意味ではもっと使って欲しいと思います。

『太陽の牙ダグラム』の「死神の執念」という回の脚本が痺れる__※ネタバレあり

近頃意識的に過去の有名作品を観ています。その一環で『太陽の牙ダグラム』を見ている中でとても痺れる回がありました。

脚本が良いのか?演出が良いのか?

この問いかけ自体が不毛で、両方良いにこしたことはありませんが、脚本が良かったのか演出が良かったのかを見極めるのは意外と簡単ではありません。

かのジブリの鈴木さんの指摘はずっと記憶に残っています。

「本当に凄い映画を見たときは、観客はストーリーなんて気にしない」とも言います。

よく、ストーリーのつじつまが合ってないことにケチをつける人がいるけど、問題なのはつじつまが合ってないことではなく、映画が面白くなかったことなんだそうです。

だからこそ、つじつまが合わないことが気になる。

そう鈴木さんは断言しました。

——『コンテンツの秘密 ぼくがジブリで考えたこと』川上量生著~クリエーターはどこで勝負するのかより

www.akiradrive.com

以下、ネタバレ含む






フェスタの手榴弾のくだり

この脚本は素晴らしい!!と思ったのは、フェスタの事故の回、第17話「死神の執念」。

シーンは以下の流れです。

  • フェスタがハックルを茶化して荒っぽい運転をする度にサイドカーの中で転がる手榴弾×数回= 視聴者はハラハラさせられる
  • 無敵かと思われた敵をフェスタの活躍で倒す
  • 仲間の称賛を浴び照れてバイクで走り出すフェスタ
  • サイドカーの中の手榴弾も転がるがぴょこんとフックに引っかかって小躍りするような動きになる= 視聴者はこれを祝福の象徴だとミスリードさせられる
  • しかしすぐに手榴弾のロックが外れる
  • 仲間の喜ぶシーンがインサートされてからの遠くでの爆発

当初手榴弾はハラハラさせる危険物の印象でしたが、事故の直前では祝福の象徴のように描かれ、視聴者は安心してしまいます。

その隙をつくようにしれっと手榴弾は爆発し、余りの一瞬の出来事に視聴者も置いてけぼりにされます。

榴弾は視聴者と制作者との対話の為だけのアイテム

榴弾の存在は視聴者しか知らないので登場キャラクター達の感情の変化には影響はありません。彼等はフェスタの死の理由はわからないまま、次の行動へと移ります。

榴弾はフィルム制作者と視聴者との間のコミュニケーションの為だけに挿入されたアイテムです。ハラハラさせたり安心させたり驚かせたり、其々のシーンで異なる役割を持たされた象徴的存在です。

このようなアイテムを脚本上に登場させ、視聴者の感情をコントロールするのが脚本の冥利です。

スリードは伏線やフラグ同様に重要なテクニック

第20話「偽りのグランプリ」もなかなか唸らせるシーンがあります。

  • 策士ラコックはダンスパーティーでデイジーに花束贈呈のOKの返事を貰い、その流れでデイジーをダンスに誘い軽くデイジーを口説きます。
  • それを見つめるラルターフ= 視聴者はこの時点で”デイジー落ちるんじゃないか?ラコックきたな!”という気持ちになります

~暫くあって~

  • グランプリに響くキャナリーのセンセーショナルなアジテーション
  • やはりクリンが気になるデイジー

全てラコックの思い通りになるのではないか?と思わせておいてからの逆転のグランプリ襲撃シーン。

視聴者を心配させておいてからの逆転というのはとても興奮するもので、このダンスシーンがあってこそキャナリーのアジテーションと盛り上がる民衆のシーンが生きてきます。

良い脚本というものはある

丁度「シン・ゴジラ」を観たばかりで、演出の良さとは?脚本の良さとは?とモヤモヤしていた時にダグラムの17話20話を観て、

やはり良い脚本というものは確実に存在する!

という感動を覚えました。


「死神の執念」が収録されているのは第14話。 レンタルだとvol4に入っています。

太陽の牙ダグラム DVD-BOX ?

太陽の牙ダグラム DVD-BOX ?