a b/t-test.ipynb
1
{
2
 "cells": [
3
  {
4
   "cell_type": "code",
5
   "execution_count": 5,
6
   "metadata": {},
7
   "outputs": [],
8
   "source": [
9
    "import numpy as np\n",
10
    "import scipy\n",
11
    "import pandas as pd"
12
   ]
13
  },
14
  {
15
   "cell_type": "code",
16
   "execution_count": 6,
17
   "metadata": {},
18
   "outputs": [],
19
   "source": [
20
    "from dataset import load_dataset, load_labels, split_data, format_labels\n",
21
    "from features import time_series_features, fractal_features, entropy_features, hjorth_features, freq_band_features\n",
22
    "import variables as v"
23
   ]
24
  },
25
  {
26
   "cell_type": "markdown",
27
   "metadata": {},
28
   "source": [
29
    "## Variables"
30
   ]
31
  },
32
  {
33
   "cell_type": "code",
34
   "execution_count": 7,
35
   "metadata": {},
36
   "outputs": [],
37
   "source": [
38
    "data_type = \"ica_filtered\"\n",
39
    "test_type = \"Arithmetic\""
40
   ]
41
  },
42
  {
43
   "cell_type": "markdown",
44
   "metadata": {},
45
   "source": [
46
    "## Load Data"
47
   ]
48
  },
49
  {
50
   "cell_type": "code",
51
   "execution_count": 8,
52
   "metadata": {},
53
   "outputs": [],
54
   "source": [
55
    "dataset_ = load_dataset(data_type=data_type, test_type=test_type)\n",
56
    "dataset = split_data(dataset_, v.SFREQ)"
57
   ]
58
  },
59
  {
60
   "cell_type": "code",
61
   "execution_count": 9,
62
   "metadata": {},
63
   "outputs": [],
64
   "source": [
65
    "label_ = load_labels()\n",
66
    "label = format_labels(label_, test_type=test_type, epochs=dataset.shape[1])"
67
   ]
68
  },
69
  {
70
   "cell_type": "markdown",
71
   "metadata": {},
72
   "source": [
73
    "## Compute Features"
74
   ]
75
  },
76
  {
77
   "cell_type": "code",
78
   "execution_count": 10,
79
   "metadata": {},
80
   "outputs": [],
81
   "source": [
82
    "# features = time_series_features(dataset)\n",
83
    "# freq_bands = np.array([1, 4, 8, 12, 30, 50])\n",
84
    "# features = freq_band_features(dataset, freq_bands)\n",
85
    "# features = fractal_features(dataset)\n",
86
    "features = hjorth_features(dataset)\n",
87
    "# features = entropy_features(dataset)"
88
   ]
89
  },
90
  {
91
   "cell_type": "markdown",
92
   "metadata": {},
93
   "source": [
94
    "## Split Data"
95
   ]
96
  },
97
  {
98
   "cell_type": "code",
99
   "execution_count": 11,
100
   "metadata": {},
101
   "outputs": [],
102
   "source": [
103
    "stressed_data = features[np.where(label != 0)]\n",
104
    "non_stressed_data = features[np.where(label == 0)]"
105
   ]
106
  },
107
  {
108
   "cell_type": "markdown",
109
   "metadata": {},
110
   "source": [
111
    "## Compute t-tests"
112
   ]
113
  },
114
  {
115
   "cell_type": "code",
116
   "execution_count": 12,
117
   "metadata": {},
118
   "outputs": [],
119
   "source": [
120
    "P = np.zeros(features.shape[1])\n",
121
    "for j, i in enumerate(range(features.shape[1])):\n",
122
    "    _, p = scipy.stats.ttest_ind(stressed_data[:, i], non_stressed_data[:, i])\n",
123
    "    P[j] = p"
124
   ]
125
  },
126
  {
127
   "cell_type": "code",
128
   "execution_count": 13,
129
   "metadata": {},
130
   "outputs": [],
131
   "source": [
132
    "pd.set_option('display.max_rows', None)\n",
133
    "pd.set_option('display.max_columns', None)"
134
   ]
135
  },
136
  {
137
   "cell_type": "code",
138
   "execution_count": 14,
139
   "metadata": {},
140
   "outputs": [
141
    {
142
     "name": "stdout",
143
     "output_type": "stream",
144
     "text": [
145
      "               0\n",
146
      "0   8.565707e-09\n",
147
      "1   4.199706e-01\n",
148
      "2   9.243714e-04\n",
149
      "3   2.969316e-01\n",
150
      "4   7.612570e-03\n",
151
      "5   7.449619e-01\n",
152
      "6   9.528565e-02\n",
153
      "7   8.299859e-01\n",
154
      "8   6.632852e-01\n",
155
      "9   7.414754e-03\n",
156
      "10  5.860924e-05\n",
157
      "11  2.434920e-02\n",
158
      "12  1.278021e-01\n",
159
      "13  2.940169e-05\n",
160
      "14  7.768960e-07\n",
161
      "15  1.016899e-05\n",
162
      "16  1.985319e-02\n",
163
      "17  1.070608e-01\n",
164
      "18  5.213117e-06\n",
165
      "19  1.358506e-22\n",
166
      "20  1.255365e-18\n",
167
      "21  2.182334e-06\n",
168
      "22  3.866509e-08\n",
169
      "23  1.044755e-05\n",
170
      "24  4.995159e-03\n",
171
      "25  2.483783e-01\n",
172
      "26  4.591010e-05\n",
173
      "27  5.557755e-05\n",
174
      "28  5.001415e-04\n",
175
      "29  8.098234e-01\n",
176
      "30  1.842379e-01\n",
177
      "31  2.943885e-01\n",
178
      "32  1.492710e-02\n",
179
      "33  2.327972e-03\n",
180
      "34  3.122502e-06\n",
181
      "35  4.874759e-02\n",
182
      "36  6.426229e-01\n",
183
      "37  2.972795e-02\n",
184
      "38  8.022454e-03\n",
185
      "39  8.336686e-01\n",
186
      "40  4.752397e-01\n",
187
      "41  2.231969e-02\n",
188
      "42  2.065300e-04\n",
189
      "43  1.022721e-01\n",
190
      "44  8.809528e-01\n",
191
      "45  4.398541e-06\n",
192
      "46  1.541289e-07\n",
193
      "47  1.503279e-03\n",
194
      "48  8.190212e-01\n",
195
      "49  3.946622e-01\n",
196
      "50  1.518190e-02\n",
197
      "51  3.568426e-16\n",
198
      "52  8.320353e-16\n",
199
      "53  1.328597e-03\n",
200
      "54  2.122381e-04\n",
201
      "55  4.511848e-03\n",
202
      "56  1.170364e-02\n",
203
      "57  8.785522e-01\n",
204
      "58  7.475689e-04\n",
205
      "59  5.430692e-03\n",
206
      "60  7.998087e-02\n",
207
      "61  7.635854e-02\n",
208
      "62  8.381844e-03\n",
209
      "63  8.201117e-03\n"
210
     ]
211
    }
212
   ],
213
   "source": [
214
    "print(pd.DataFrame(P))"
215
   ]
216
  },
217
  {
218
   "cell_type": "code",
219
   "execution_count": null,
220
   "metadata": {},
221
   "outputs": [],
222
   "source": []
223
  }
224
 ],
225
 "metadata": {
226
  "kernelspec": {
227
   "display_name": "Python 3.9.7 ('init')",
228
   "language": "python",
229
   "name": "python3"
230
  },
231
  "language_info": {
232
   "codemirror_mode": {
233
    "name": "ipython",
234
    "version": 3
235
   },
236
   "file_extension": ".py",
237
   "mimetype": "text/x-python",
238
   "name": "python",
239
   "nbconvert_exporter": "python",
240
   "pygments_lexer": "ipython3",
241
   "version": "3.9.7"
242
  },
243
  "orig_nbformat": 4,
244
  "vscode": {
245
   "interpreter": {
246
    "hash": "6a0b16b431f91af56543167d2335ade6a4f69621936ac10d0388e1e58aabcd37"
247
   }
248
  }
249
 },
250
 "nbformat": 4,
251
 "nbformat_minor": 2
252
}