今回は、外資系企業動向調査のデータを分析しようと思います。
政府統計の総合窓口 e-Statのウェブサイトからデータを取得できます。
外資系企業動向調査は、日本に進出している外資系企業を対象とした統計調査で、国や地方公共団体における今後の産業政策及び通商政策の推進に資するための基礎資料を得ることを目的として毎年実施されています。
外資系企業動向調査では、企業概要や、雇用の状況、売上高などの経営情報を、産業別に母国惜別、参入時期別などで集計し、結果を提供しています。また、日本で事業展開する上での魅力や阻害要因、今後一年間の雇用の見通しなども集計しています。
調査結果は、政府のみならず、産業界、学界等においても活用されています。
とのことです。
いろいろデータファイルがありましたが、このようなExcelファイルをダウンロードしました。
いままでは、これをR言語にアップロードする前に整理・下降してからアップロードしていましたが、今回はこれをそのままアップロードして、R言語上で整理してみようと思います。できるかな?
まずは、read.csv関数でデータを読み込んでみましょう。
なるほど、エクセルファイルそのままになっていますね。10行目からがデータですから、1行目から9行目を削除しましょう。
少しよくなってきました。str関数でどんな構造になっているか確認しましょう。
262 観測があって、21の変数となっています。X.6, X8, X10, X12, X.13, X14, X15, X.16, X.18の変数は「注釈」の列なのでいらないですね。削除します。
いらない列を削除しましたが、まだ不要な列がありあそうです。1列目を見てみましょう。
こうなりました。1列目も不要ですね。
2列目はどうでしょうか?
こうなりました。2列目も不要ですね。
3列目は
こうなりました。3列目は年度の列なので必要です。
4列目は
こうなりました。あ、こっちを残せ3列目はいらないですね。
5列目は
こうなりました。これはいるのかな?
6列目から14列目はhead関数で一気に見てみます。
6列目は業種ですね。これを残せば、5列目は不要ですね。それと7列目も不要ですね。
ということで、不要な列は、1, 2, 3, 5, 7列が不要です。削除しましょう。
だいぶ整理できてきました。
colnames関数で変数名を確認すると、X.1, X.2~~となっています。これを1行目のように、年度、業種と変更したいですね。
as.vector(unlist(df[1, ]))でデータフレームの1行目をベクトルに形式変換して、それをcolnamesに流し込んでいます。2番目の業種(2007年-)はただの業種にしてやりましょう。
こうなりました。未設立・未操業をの・を削除しましょう。
head関数で始めの数行を表示します。
一行目がいらないですね。削除しましょう。
だいぶ整理されてきました。行番号が11から始まっています。これを1からにしましょう。
見栄えはこれで十分ですね。しかし、合計以降のデータが数値データとしてではなくて、ファクタとして格納されていますので、これを修正しなければなりません。
このように、levels関数で確認すると、"", "ー", "***"が数字以外のファクタ水準ですね。どうしましょうか。。
合計を表示してみると、
こうなります。***が4つありますね。まず、df$合計をファクタ型から文字列型に変換し、***を 0 に変換します。そうして文字列型を数値型に変換します。
これでうまくいきました。他の変数も同じようにやってみましょう。
df$操業中はこうなっています。ーと***があります。なので、-と***を 0 に変換する必要があります。
できました。これと同じ作業をあと、5回もしなくてはいけません。関数を定義しましょう。こんな感じで定義しました。
変換前のデータと変換後のデータを表示するようにしています。
それでは、早速やってみます。まずは、df$設立後初決算前です。
やった、やった!大成功です!
この調子で残りの4つもやってしまいましょう。
これでやっと分析できる整理されたデータフレームになりました。summary関数で基本統計量を出しましょう。
あれ!?? 関数で変換した変数がうまく数値型データに変換されていませんね。。
関数が悪かったのかな?あ、
df$設立後初決算前 <- factor_to_numeric(df$設立後初決算前)
とすればよかったのですね。やりなおします。
このようにやりなおしました。
それでは、summary関数で処理してみましょう。
はい、できました!
これで次回から分析に使えます。
それにしても、今回思ったのは、Excel上で下処理してからR言語に読込むほうがはるかに楽ということです。疲れました。
今回は以上です。
次回は
です。