Hatena::ブログ(Diary)

旧版こにしき(言葉、日本社会、教育)※2018年4月、新ブログに移行済み このページをアンテナに追加 RSSフィード

新ブログURL:
http://terasawat.hatenablog.jp/








June 07, 2009

Rで職業変数を、SSM職業8分類に再コード化する

探せばきっとどこかにあるんでしょうがちょっと見つからなかったので自分スクリプトを書きました。

職業800番台のコードには対応していないので、比較的新しいデータを使う場合は、1.職業とのマッチングの部分で適時修正してください。

このスクリプトは、numeric形式(数値形式)の職種変数を変換するものです。したがって、factor形式には対応していません。


SPSSファイルから読み込んだデータをお使いのときは、たとえばlibrary(foreign)パッケージのread.spss()関数で、 引数use.value.labels=FALSE と指定して下さい。

dat <- read.spss("data.sav"
         ,use.value.labels=FALSE
         ,to.data.frame=TRUE)



2014年7月15日追記

追加コードの職業分類への対応は、JGSS-2009のコードブックを参考にしました。

http://jgss.daishodai.ac.jp/research/codebook/JGSS-2009LCS_Codebook_Published.pdf


## SSMに従った
## 職業8分類


## 1.職業とのマッチング

senmon <- c(      # 専門
  501,502,503,504,505,506,507,508,509,510,511,512,
  513,514,515,516,517,518,519,520,521,522,523,524,525,
  526,527,528,529,530,531,532,533,534,535,536,537,538,
  539,540,541,542,543,544,609,610,615,703)

kanri <- c(        # 管理
  545,546,547,548,549,550,551,552,553,608)

zimu <- c(         # 事務
  554,555,556,557,558,559,560,561,562,563,564,565,586,
  590,593,594,595,596,597,598,616,617,618,619,701)

hanbai <- c(       # 販売
  566,567,568,569,570,571,572,573,574,575,576,577,582,
  583,584,585,587,588,589)

jukuren <- c(      # 熟練
  579,581,623,624,626,628,631,633,635,636,637,638,639,
  640,641,642,643,644,647,651,654,655,656,658,660,661,
  662,663,664,665,666,668,670,671,673,674,675,677,678,
  679,680,681,684,702)

hanjukuren <- c(   # 半熟練
  580,606,607,611,612,613,614,625,627,629,630,632,634,
  645,646,648,649,650,652,653,657,659,667,669,672,676,704
  ,706)            # 2014年7月15日:「706 宅配便」追加

hijukuren <- c(    # 非熟練
  578,591,592,620,621,622,682,683,685,686,687,688)

nourin <- c(       # 農林
  599,600,601,602,603,604,605)

DKNA <- c(         # 分類不能・無回答
  689,705,707,987, 998,999)                 # 2012年1月11日、「987 兵役」追加


# 2.一括再コード

  library(car)   # recode() 関数使用のため

# 例:「Dataset」というデータセットに含まれている
# 「syokugyou」という職業の変数をもとに
# 「JOB8」という8分類の変数を新たに作る


JOB8 <- recode(Dataset$syokugyou, "      
  senmon = '専門';
  kanri  = '管理';
  zimu   = '事務';
  hanbai = '販売';
  jukuren= '熟練';
  hanjukuren= '半熟練';
  hijukuren='非熟練';
  nourin  ='農林';
  DKNA = NA
                       ", as.factor.result=T)



# 3.再コード結果を確認

table(JOB8)

てらさわてらさわ 2012/01/12 12:42 「987 兵役」をDKNAに追加。

TerasawaTTerasawaT 2014/07/15 14:11 「706 宅配便」追加

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/TerasawaT/20090607/1244363041