SPSS Modeler18.2でJSONのファイルの読み書きができるようになったので試してみました。
JSON エクスポート・ノード
https://www.ibm.com/support/knowledgecenter/ja/SS3RA7_18.2.0/modeler_mainhelp_client_ddita/clementine/jsonexportnode.html
1 サンプルデータ
以下のようなデータでテストしました。
[
{
"_id": "53ea1d4734e8189d0385473b",
"年齢": 26,
"名前": "山田太郎",
"likes": [
"cats",
"sleeping"
],
"friends": [
{
"id": 0,
"name": "Lane Castaneda"
},
{
"id": 1,
"name": "Cline Mccoy"
}
]
},
{
"_id": "53ea19146bc5d2192ef92733",
"名前": "鈴木次郎",
"isActive": false,
"weight": 61.345,
"likes": [
"dogs",
"jogging",
"music"
],
"friends": [
{
"id": 0,
"name": "Claire Phelps"
}
]
}
]
狙いは以下です。
- 日本語の値が読めるか
- 日本語の列名が読めるか
- キー値がそろっていない場合にどうなるか(年齢というキー値は山田さんにしかありません)
- ネストしたデータがどうなるか(マニュアルにあるようにネストしていると読めないということですが、どうなるかも含めてテストしました。)
2 インポート
結果
- 日本語の値が読めた
- 日本語の列名が読めた
- 列項目がそろっていない場合には列が存在しないレコード分は$null$となった
- ネストしたデータは文字列ではいった
- ファイルのエンコードをUTF-8にしないと「データ モデルを取得できません: json ファイルを解析できませんでした。詳細: Invalid octet in UTF-8 sequence when decoding 'string'。」のエラーになった
3 エクスポート
結果
- 日本語の値はUnicodeエスケープシーケンスで出力された
- 日本語の列名もUnicodeエスケープシーケンスで出力された
- $null$の値もキー値が出力された
- ネストしたデータはダブルクォートで囲まれ文字列としてはいった
- オブジェクトの区切りなどでも改行は入らなかった。