データのお砂場(65) R言語、mtcars、50年前の自動車「ロードテスト」の結果

Joseph Halfmoon

今回のサンプルデータは、約50年前のMotor Trend US誌に掲載された1973年から74年モデルの自動車に関する諸元の比較表です。燃費とか比べてもいるのだけれど、「ガソリン垂れ流しているのかよ」という感じです。データには日本車、ドイツ車も混じっているけれど、当時のアメ車主体のデータだろうから当然か。

※「データのお砂場」投稿順Indexはこちら

いや~、燃費はともかく古いアメ車の「ふわふわ感」良かったんだな。最高速度の制限が低い米国の高速道路をふわふわのアメ車で走るのは、こと乗り心地という観点ではお楽、とっても楽。それにこのデータセットから10年以上後の時代の記憶だけれども、それでも米国のガス代安かったデス。当時の日本のガソリン代の3分の1くらいの感覚。高速代はかからないし毎日何百マイルでもドライブできると。

R言語付属のデータセットをアルファベット順(大文字優先)で眺めてます。今回のデータセットは mtcars です。解説ページが以下に。

Motor Trend Car Road Tests

合計32車種を比較しているデータセットなのですが、結構いい加減です。以下1か所引用させていただきました。

the Mazda’s rotary engine as a straight six-cylinder engine and the Porsche’s flat engine as a V engine, as well as the inclusion of the diesel Mercedes 240D

マツダは50年前にもうロータリーエンジン車を米国に輸出していたのね。ロータリーエンジンを位置づけするところが無かったので直列6気筒にみなすとな。一方ポルシェの水平対向エンジンはV型の分類に入れると。そんなもんかい。でもベンツ(Mercedes)のディーゼルエンジン車も含めている(以前との比較のためみたい。)ガソリン車とディーゼル車じゃ比較にならんような気がしないでもないけれど。

車種名がデータに入っていると嬉しかったのですが、サンプルデータセットには車種名は入ってません。単なる数字の羅列ばかり。残念。

データセットに記載されている諸元は以下のとおりです。

    • mpg、 燃費[Miles/(US) gallon]
    • cyl、 エンジンの気筒数
    • disp、 排気量[cu.in.]
    • hp、 馬力(グロス)
    • drat、 Rear axle ratio
    • wt、重量[1000 lbs]
    • qsec、4分の1マイル秒数
    • vs、0ならV型、1なら直列
    • am、0ならオートマ、1ならマニュアル
    • gear、前進ギアの段数
    • carb、キャブレターの数

まあ、マイルとかガロンとかの表示はなんとなくつかめるのだけれど、排気量のキュービック・インチになると感覚つかめないです。換算したいデス。それにRear axle rationというのは、いわゆるデファレンシャル比とか最終減速比のことなのだろうけれども、Rearということは何かい?FR車限定?当時はFF車は普及してなかったのか?自動車素人には分からんなあ。

そういえば米国でタイヤに空気入れようとして困ったことを思い出しました。日本じゃ kg/cm^2 で表示だけれども米国は PSI。2.5kg/cm^2はPSIでいくらになるんだっけ?困った。

まずは生データ

サンプルデータセットをまずはロードしてみます。シンプルなデータフレームですべての列は数値データです。以下のような感じ。mtcarsRawData

とりあえず「素のまま」summaryとってみましたが、こんな感じ。factor化した方が良いフィールドもあり、見ずらいっす。その上単位がなんだかな~、実感わきにくいのよね。RawSummary

処理例に従って処理してみる

今回の解説ページには処理例あり、pairs()とcoplot()を使ってプロットしてみてました。オペレーションは以下に。mtcarsPlotOpr

pairsの結果が以下に。車種名わかると面白かったと思うのだけれど、このグラフをグリグリ観察するのは骨が折れそう、ということでさっさとパス。mtcarsPairs

一方、そこから燃費 mpg と排気量 disp の関係を、シリンダ数を条件として条件付き散布図としたものが以下に。条件付き散布図 coplot()の解説は以下を参考にさせていただきました。

Rでのデータの視覚化(3)

分かりやすいです。シリンダ数が多ければ燃費は悪いと。しかし、6気筒車などみると必ずしも排気量多いから燃費が悪いということでもないみたい(まあ、大きく見れば排気量が大きいほうが燃費が悪いケド。)mtcarsCoplot

しかし、それにしても全体に燃費悪すぎ。

「勉強になるな」と思ったのは処理例の次のところです。エンジンの形式とかトランスミッションとかファクタとした方が良い列をファクタ化してます。そのとき、大小関係がつけられない純粋な factorと、大小関係がつけれれる ordered にわけて再定義してます。mtcar2

上記の集計かけたものが以下に。オートマ車が19車種、マニュアル車が13車種とか、とってもわかりやすい集計になりました。なおフィールド名は mpg のままですが、燃費欄の単位は km/L です。mtcar2summary

さらに単位を換算してみる

米国式の単位系のままではイマイチ実感がわかないので、自主的に換算してみました。

    • 1 マイル 1.609km、1 ガロン 3.785Lだから、1 mpg ≒ 0.43 km/Lね。
    • Displacement (cu.in.) 1立方インチは16.39 cc
    • 1 ポンドは0.454kg

換算したデータセットと summary取り直したものが以下に。mtcar3summary

燃費一番良いのでも、リッター14.6kmくらい。一番悪いやつはリッター4.5kmか。とんでもないな。

データのお砂場(64) R言語、morley、実際はMichelson、光速の測定 へ戻る

データのお砂場(66) R言語、nhtemp、コネティカット州ニューヘイブンの年平均気温とな へ進む