In [106]:
%run /home/grg/git/alfa/roicollect.py
df = pd.read_excel('/tmp/MMSE_data.xlsx').set_index('ID_Code')
subj = [string.atoi(e) for e in open('/tmp/bsc_subjects.txt').read().split('\n') if e != '']
cov = pd.read_excel('/tmp/covariates.xls')
cov = cov[cov['subject'].isin(subj)].set_index('subject')
cov = cov.join(df)
df = pd.read_excel('/tmp/Cognition_Data_MRI.xlsx').set_index('ID_Code')
cov = cov.join(df)
cov = cov.dropna()
grp = get_groups(cov, ['HO', 'HT', 'NC'], by='apoe')
cov.head()
Out[106]:
age
apoe
gender
education
MMSE
AGE_MRI
AGE_Cognition
Education_Years
Sex (0 = Female)
TIV
...
TFR
TDFR
TDPR
WAIS_DSST
WAIS_Visual_Puzzle
WAIS_Digit_Span_Forward
WAIS_Digit_Span_Backward
WAIS_Digit_Span_Sequence
WAIS_Matrices
WAIS_Similarities
subject
10010
52.698152
2
1
18
30.0
52.0
51.0
18.0
1.0
1549.229
...
16.0
18.0
26.0
69.0
19.0
10.0
7.0
10.0
20.0
27.0
10013
55.414100
2
0
11
30.0
55.0
54.0
11.0
0.0
1508.795
...
17.0
18.0
26.0
44.0
15.0
14.0
12.0
10.0
14.0
26.0
10015
50.707734
1
0
17
29.0
50.0
50.0
17.0
0.0
1518.794
...
15.0
14.0
28.0
63.0
11.0
9.0
8.0
7.0
17.0
26.0
10016
48.583162
3
0
17
30.0
48.0
47.0
17.0
0.0
1463.008
...
27.0
31.0
31.0
95.0
14.0
12.0
10.0
12.0
13.0
27.0
10023
61.065024
2
1
18
27.0
61.0
59.0
18.0
1.0
1652.739
...
6.0
6.0
10.0
62.0
11.0
11.0
6.0
7.0
10.0
13.0
5 rows × 23 columns
In [112]:
from scipy import stats
st = []
d = grp[2]
for each in d.columns:
st.append((each, len(d[each]), d[each].mean(), d[each].std()))
st = pd.DataFrame(st, columns=['name', 'N', 'mean', 'std'])
st
Out[112]:
name
N
mean
std
0
age
250
58.444594
7.602628
1
apoe
250
1.184000
0.984898
2
gender
250
0.364000
0.482114
3
education
250
13.628000
3.617452
4
MMSE
250
29.000000
1.122962
5
AGE_MRI
250
57.964000
7.611732
6
AGE_Cognition
250
56.988000
7.663339
7
Education_Years
250
13.628000
3.617452
8
Sex (0 = Female)
250
0.364000
0.482114
9
TIV
250
1481.801488
153.463060
10
N. of APOEe4
250
0.000000
0.000000
11
APOE status
250
28.920000
4.924490
12
TPR
250
23.828000
4.853519
13
TFR
250
16.316000
5.198098
14
TDFR
250
16.488000
5.350549
15
TDPR
250
23.572000
4.922371
16
WAIS_DSST
250
65.648000
15.761147
17
WAIS_Visual_Puzzle
250
13.252000
4.316367
18
WAIS_Digit_Span_Forward
250
8.308000
2.139027
19
WAIS_Digit_Span_Backward
250
7.828000
2.062871
20
WAIS_Digit_Span_Sequence
250
8.284000
2.096886
21
WAIS_Matrices
250
16.264000
4.223940
22
WAIS_Similarities
250
22.368000
4.680192
In [79]:
chi2, p, df, _ = stats.chi2_contingency([[92,94,25], [165,113,43]])
chi2,p
Out[79]:
(4.700681031931448, 0.095336693021630711)
In [76]:
len(d[d['gender']==0]), len(d[d['gender']==1])
Out[76]:
(43, 25)
In [113]:
each = 'TPR'
stats.f_oneway(grp[0][each], grp[1][each], grp[2][each])
Out[113]:
F_onewayResult(statistic=2.3640391165088657, pvalue=0.095063377373759528)
In [105]:
nans = lambda df: df[df.isnull().any(axis=1)]
nans(cov)
Out[105]:
age
apoe
gender
education
MMSE
AGE_MRI
AGE_Cognition
Education_Years
Sex (0 = Female)
TIV
...
TFR
TDFR
TDPR
WAIS_DSST
WAIS_Visual_Puzzle
WAIS_Digit_Span_Forward
WAIS_Digit_Span_Backward
WAIS_Digit_Span_Sequence
WAIS_Matrices
WAIS_Similarities
subject
10113
47.772758
0
0
11
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
10335
61.084189
2
0
10
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
10472
55.348392
4
0
15
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
11248
55.014374
1
1
15
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
11435
65.754962
2
0
15
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
11487
63.501711
2
1
10
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
11850
53.242984
3
1
15
29.0
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
12537
60.197125
4
0
8
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
44062
66.896646
3
0
18
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
44105
70.346338
2
0
15
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
55210
64.342231
4
1
17
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
55539
59.008898
1
0
8
30.0
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
66124
68.167009
2
0
12
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
66125
52.027379
0
0
18
30.0
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
66257
65.875428
4
0
10
30.0
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
77241
61.013005
1
0
15
30.0
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
16 rows × 23 columns
In [ ]:
Content source: xgrg/alfa
Similar notebooks: