私は R に非常に慣れていないので、データ ディクショナリの定義を一連のデータにマップして、より読みやすいテキストを作成しようとしています。
たとえば、現在 Kaggle にあるエイムズ アイオワ州住宅データセット内のデータ ディクショナリに基づいて、住宅のゾーニングをマッピングしようとしています。
mapping <- list(
'A'='Agriculture',
'C (all)'='Commercial',
'FV'='Floating Village Residential',
'I'='Industrial',
'RH'='Residential High Density',
'RL'='Residential Low Density',
'RP'='Residential Low Density Park',
'RM'='Residential Medium Density'
)
housingData$MSZoning <- as.factor(as.character(mapping[origData$MSZoning]))
ただし、元のデータ セットには、これらすべてのデータ ポイントの値が含まれているわけではありません。
> table(origData$MSZoning)
C (all) FV RH RL RM
10 65 16 1151 218
コードでマッピングした後、キーと値のペアが一致しません。(たとえば、農業は「C」にマップされます。)ソース データの空の値がマッピングから外れていると思います。
> table(housingData$MSZoning, origData$MSZoning)
C (all) FV RH RL RM
Agriculture 10 0 0 0 0
Commercial 0 65 0 0 0
Floating Village Residential 0 0 16 0 0
Industrial 0 0 0 1151 0
Residential High Density 0 0 0 0 218
これらのキーと値が適切に配置されるようにするためのより適切な方法は何ですか?