Repository navigation
Expand file tree
/
Copy pathmake_all_vision.js
More file actions
129 lines (121 loc) · 5.62 KB
/
Copy pathmake_all_vision.js
File metadata and controls
129 lines (121 loc) · 5.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
import { CSV } from "https://js.sabae.cc/CSV.js";
const columns = `回答番号
受付番号
回答日時
属性
あなたの性別は?
あなたの年齢は?
あなたが住んでる地区は?
あなたが住んでる地区の良いところや好きなところ、自慢したいところは?
あなたが住んでいる地区に変わってほしいところや不便なところは?
鯖江市に変わってほしいところや不便なところは?
あなたは鯖江市に住み続けたいですか?
住みたい場所の質問で、3~5を選択した人にお聞きします。具体的にどこに移りたいですか?
住みたい場所の質問で、あなたが選んだ理由は?
あなたが欲しい情報を探したり集めたりするときに使うものは? [(○は3つまで)]
あなたが欲しい情報を探したり集めたりするときに使うものは?その他
あなたは鯖江市がどんなまちになったらいいと思いますか? [(○は3つまで)]
あなたは鯖江市がどんなまちになったらいいと思いますか?その他
鯖江市の将来像について、夢や希望、アイデアなど、想いを自由に書いてください。
その他、市に対して言いたいことを、自由に書いてください。`.split("\n");
const sortColumnsVision = (data) => {
return sortColumns(data, columns);
};
const sortColumns = (data, columns) => {
const res = [];
for (const d of data) {
const o = {};
for (const name of columns) {
o[name] = d[name];
}
res.push(o);
}
return res;
};
export const makeVision = async () => {
const list = [
["chugakusei", "中学生"],
["kokosei", "高校生"],
["ippan", "一般"],
];
const data = [];
for (const l of list) {
const d0 = await CSV.fetchJSON("R5bijon_" + l[0] + "_kekka.csv");
d0.forEach(d => {
d.属性 = l[1];
if (d.属性 == "中学生") {
d["あなたの年齢は?"] = "12〜15歳";
} else if (d.属性 == "高校生") {
d["あなたの年齢は?"] = "15〜18歳";
}
// fix
{
const fixset = [
[
["あなたが欲しい情報を探したり集めたりするときに使うものは? その他"],
"あなたが欲しい情報を探したり集めたりするときに使うものは?その他",
],
[
["あなたが住んでる地区は? [地区名が分からない場合は下記の地区別町名をご覧ください]"],
"あなたが住んでる地区は?",
],
[
[
"あなたが社会人になっても鯖江市に住み続けたい? [※1~2を選択した人の次の設問はQ7です]",
"あなたが社会人になっても鯖江市(市外の方は今住んでるまち)に住み続けたい? [※1~2を選択した人の次の設問はQ7です]",
"あなたは鯖江市に住み続けたいですか? [※1~2を選択した人の次の設問はQ9です]",
],
"あなたは鯖江市に住み続けたいですか?",
],
[
[
"Q5で3~5を選択した人にお聞きします。具体的にどこに移りたいですか? [都道府県、市町、地区名など]",
"Q7で3~5を選択した人にお聞きします。具体的にどこに移りたいですか? [都道府県、市町、地区名など]",
],
"住みたい場所の質問で、3~5を選択した人にお聞きします。具体的にどこに移りたいですか?",
],
[
[
"Q5であなたが選んだ理由は? [できるだけ具体的にお願いいたします。]",
"Q7であなたが選んだ理由は? [できるだけ具体的にお願いいたします。]",
],
"住みたい場所の質問で、あなたが選んだ理由は?",
],
];
for (const f of fixset) {
const org = f[0];
const fix = f[1];
for (const o of org) {
if (d[o] !== undefined) {
d[fix] = d[o];
delete d[o];
break;
}
}
}
}
data.push(d);
});
}
const data2 = sortColumnsVision(data);
await Deno.writeTextFile("R5_vision_all.csv", CSV.stringify(data2));
/*
const q1 = "鯖江市の将来像について、夢や希望、アイデアなど、想いを自由に書いてください。";
const q2 = "その他、市に対して言いたいことを、自由に書いてください。";
const qh1 = "あなたが社会人になっても鯖江市に住み続けたい? [※1~2を選択した人の次の設問はQ7です]";
const qh2 = "あなたが社会人になっても鯖江市(市外の方は今住んでるまち)に住み続けたい? [※1~2を選択した人の次の設問はQ7です]";
const qh3 = "あなたは鯖江市に住み続けたいですか? [※1~2を選択した人の次の設問はQ9です]";
const voice = data.filter(d => d[q1] || d[q1]).map(d => {
const age = d.属性 == "一般" ? d["あなたの年齢は?"] : d.属性;
const happiness = d.属性 == "一般" ? d[qh3] : d.属性 == "中学生" ? d[qh1] : d[qh2];
return {
voice: (d[q1] ? d[q1].trim() + "\n" : "") + (d[q2] ? d[q2].trim() + "\n" : ""),
age,
sex: d["あなたの性別は?"],
happiness,
};
});
return voice;
*/
};
await makeVision();