今回は自動車輸送統計調査の営業バスのデータを使って、クロス表分析をしましょう。
まずは、CSVファイルに保存してあるデータをread.csv関数でR言語で読込みます。head関数で始めの6行を表示しますね。
このようなデータです。どのデータが一番バラツキが大きいか、変動係数(標準偏差 / 平均値)を計算してみます。標準偏差はsd関数、平均値はmean関数です。apply関数で列ごとにsd関数、mean関数を適用します。
乗合定期外人数29年が変動係数2.03で一番バラツキが大きいですね。
今までの分析で伸び率を計算していました。その伸び率も変動係数を計算してみましょう。
cbind関数でそれぞれ計算した伸び率と都道府県、地域のデータを結合して一つのデータフレームを作成しています。変動係数はこうなりました。
乗合人キロ伸び率の変動係数が0.30で一番大きいですね。
一人当り輸送キロも計算していましたね。見てみましょう。
これらの変動係数を計算しましょう。
乗合輸送キロ22年の変動係数が0.71で一番大きいです。
まとめると、
原数値データでは、乗合定期外人数29年
伸び率データでは、乗合人キロ伸び率
一人当り輸送キロでは、乗合輸送キロ22年
これらが変動係数が一番大きいことがわかりました。この3つを中央値より大きい、中央値以下で2つのカテゴリカル変数にして、クロス表を作成しましょう。
ifelse関数でカテゴリカル変数を作成します。
「カテ」はカテゴリカルのカテです。
いよいよクロス表を作成します。table関数で作成できます。
まずは、地域ごとに特色があるか見てみましょう。
地域とカテ乗合定期外人数29年のクロス表です。
四国、北海道は下位が多いですね。
地域とカテ乗合人キロ伸び率のクロス表は以下のようになりました。
近畿と北陸信越は全て上位、逆に中国と東北は全て下位です。
地域とカテ乗合輸送キロ22年のクロス表は以下のようになりました。
近畿は全て上位、四国、中国、北陸信越は全て下位です。
カテ乗合定期外人数29年とカテ乗合人キロ伸び率のクロス表はこうなりました。
あ、下位同士、上位同士の度数が多いです!統計的に有意かどうかカイ自乗検定をしてみます。chisq.test関数です。
p-value = 0.1313 > 0.05 ですから、統計的に有意があるとはいえませんでした。
カテ乗合定期外人数29年とカテ乗合輸送キロのクロス表はこうなりました。
お!今度は、人数の下位は輸送キロは上位、人数の上位は輸送キロは下位という組み合わせが多くなりました。カイ自乗検定をしてみましょう。
p-value = 0.01936 < 0.05 ですから有意ですね。平成22年度の輸送キロが下位の都道府県が、平成29年度の乗合定期外人数が上位のグループに入る確率が有意に多いということです。
最後の組み合わせ、カテ乗合人キロ伸び率とカテ乗合輸送キロ22年のクロス表はこうなりました。
あ!これはカテ乗合定期外29年とカテ乗合輸送キロ22年と同じですね。
ということは、カテ乗合輸送キロ22年が下位のグループはカテ乗合人キロが上位のグループになる確率が有意に多いということです。