This pipeline opens the result of ICAalamelodic.m, lets the user interactively label the components that look like neuronal activity (rather than movement artefacts or noise), sort them by label, plots a final summary for the chosen components, and save the reordered maps and time series.


In [1]:
import matplotlib
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
from scipy import io
%matplotlib inline 
import pylab

Open time series


In [2]:
import scipy.io as sio

In [3]:
# from http://stackoverflow.com/questions/3579568/choosing-a-file-in-python-with-simple-dialog
from Tkinter import Tk
from tkFileDialog import askopenfilename

Tk().withdraw() # we don't want a full GUI, so keep the root window from appearing
filename = askopenfilename() # show an "Open" dialog box and return the path to the selected file
print(filename)


/media/sophie/db554c18-e3eb-41e2-afad-7de1c92bf4a5/THDDCGCaMP62/100404series/100405seriesintMB176Smith0_4_60TS.mat

In [4]:
Ua=sio.loadmat(filename)

In [5]:
DT=Ua['TSmean']

In [6]:
DT.shape


Out[6]:
(24112, 176)

In [7]:
S1=DT.shape

In [8]:
DTmean=np.zeros(S1)
DTvar=np.zeros(S1)
Var=np.zeros(S1[1])

In [9]:
for i in range(S1[1]):
    DTmean[:,i]=DT[:,i]-np.mean(DT[:,i],0)

In [10]:
for i in range(S1[1]):
    Var[i]=np.sqrt(np.var(DTmean[:,i]))
    DTvar[:,i]=DTmean[:,i]/Var[i]

In [11]:
DTvar.shape


Out[11]:
(24112, 176)

open maps


In [12]:
import nibabel as nb

In [13]:
# from http://stackoverflow.com/questions/3579568/choosing-a-file-in-python-with-simple-dialog
from Tkinter import Tk
from tkFileDialog import askopenfilename

Tk().withdraw() # we don't want a full GUI, so keep the root window from appearing
filename2 = askopenfilename() # show an "Open" dialog box and return the path to the selected file
print(filename2)


/media/sophie/db554c18-e3eb-41e2-afad-7de1c92bf4a5/THDDCGCaMP62/100404series/100405seriesintMB176Smith0_4_60IC.nii

In [14]:
img1 = nb.load(filename2)

In [15]:
data = img1.get_data()

In [16]:
S=data.shape

In [17]:
S


Out[17]:
(41, 26, 15, 176)

Zscore maps


In [18]:
Demean=np.zeros(S)
Dmaps=np.zeros(S)
Dvar=np.zeros(S)
Var=np.zeros(S[3])
D2=np.zeros([S[0],S[1],5,S[3]])
Tvar=np.zeros(S[3])

Transform the maps to have zero mean


In [19]:
for i in range(S[3]):
    Demean[:,:,:,i]=data[:,:,:,i]-np.mean(np.mean(np.mean(data[:,:,:,i],0),0),0)

Transform the maps to have unit variance and zscore


In [20]:
for i in range(S[3]):
    Dsq=np.reshape(Demean[:,:,:,i],S[0]*S[1]*S[2])
    Var[i]=np.sqrt(np.var(Dsq))
    Dvar=Demean[:,:,:,i]/Var[i]
    Dmaps[:,:,:,i]=Dvar-2.5
Dmaps[Dmaps<0]=0

Order ICs by variance


In [21]:
datao=data
Dmapso=Dmaps

In [22]:
plt.plot(Var)


Out[22]:
[<matplotlib.lines.Line2D at 0x7f25bfc18310>]

Separate maps in substacks, sort the independent components by brain regions


In [23]:
my_cmap=plt.cm.jet
my_cmap.set_bad(alpha=0)
Good_ICs=np.zeros(S[3])
Label_ICs=[]
pylab.rcParams['figure.figsize'] = (13, 2.5)

In [24]:
Dtemp=data[:,:,:,0]

In [25]:
%%javascript
IPython.OutputArea.auto_scroll_threshold =4000;



In [26]:
if S[2]>5:
    Nstack=5
    Int100=[(i+1)*100/Nstack for i in range(Nstack)]
    Percs=np.percentile(range(S[2]),Int100)
    Indices=np.split(range(S[2]),Percs)
    D1=np.zeros([S[0],S[1],Nstack])
    Dmean=Dtemp[:,:,range(Nstack)]
    for i in range(Nstack):
        Vmean=np.mean(Dtemp[:,:,Indices[i]],2)
        #Dmean[:,:,i]=np.max(Vmean,0)
        Dmean[:,:,i]=Vmean
else:
    Nstack=S[2]
    D1=np.zeros([S[0],S[1],S[2]])
    Dmean=data[:,:,range(S[2])]  
    Dmean=np.squeeze(Dtemp[:,:,:])


/usr/local/lib/python2.7/dist-packages/numpy/lib/shape_base.py:422: VisibleDeprecationWarning: using a non-integer number instead of an integer will result in an error in the future
  sub_arys.append(_nx.swapaxes(sary[st:end], axis, 0))

In [27]:
DTvar.shape


Out[27]:
(24112, 176)

In [28]:
S


Out[28]:
(41, 26, 15, 176)

In [32]:
# from http://stackoverflow.com/questions/3579568/choosing-a-file-in-python-with-simple-dialog
Tk().withdraw() # we don't want a full GUI, so keep the root window from appearing
filename = askopenfilename() # show an "Open" dialog box and return the path to the selected file
print(filename)


/media/sophie/db554c18-e3eb-41e2-afad-7de1c92bf4a5/THDDCGCaMP62/100404series/100404seriesXk.mat

In [33]:
Ua=sio.loadmat(filename)
Xk=Ua['Xk']
#Xk[1,:]=Ua['Walk']

In [34]:
Xk.shape


Out[34]:
(24112, 6)

In [35]:
# from http://stackoverflow.com/questions/3579568/choosing-a-file-in-python-with-simple-dialog
from Tkinter import Tk
from tkFileDialog import askopenfilename

Tk().withdraw() # we don't want a full GUI, so keep the root window from appearing
filenamet = askopenfilename() # show an "Open" dialog box and return the path to the selected file
print(filenamet)
nimt=nb.load(filenamet)
Dtemp=np.squeeze(nimt.get_data())
Dtemp.shape


if S[2]>5:
    Nstack=5
    Int100=[(i+1)*100/Nstack for i in range(Nstack)]
    Percs=np.percentile(range(S[2]),Int100)
    Indices=np.split(range(S[2]),Percs)
    Dmean=np.zeros([S[0],S[1],Nstack])
    #Dmean=np.squeeze(data[:,:,range(Nstack),2])
    for i in range(Nstack):
        Vmean=np.mean(Dtemp[:,:,Indices[i]],2)
        Dmean[:,:,i]=Vmean

plt.imshow(Vmean,cmap=plt.cm.gray)


/media/sophie/db554c18-e3eb-41e2-afad-7de1c92bf4a5/THDDCGCaMP62/100404series/AsoTransformed.nii
Out[35]:
<matplotlib.image.AxesImage at 0x7f25bfa52b10>

In [36]:
Xk=Xk.T

In [37]:
Xk.shape


Out[37]:
(6, 24112)

In [38]:
Label_ICs=[]

In [42]:
plt.plot(Xk[(range(3,6)),:].T)


Out[42]:
[<matplotlib.lines.Line2D at 0x7f25bee6af50>,
 <matplotlib.lines.Line2D at 0x7f25bee6aad0>,
 <matplotlib.lines.Line2D at 0x7f25bee6abd0>]

In [ ]:
### Label_ICs=[]
for j in range(S[3]):

    if S[2]>5:
        for i in range(Nstack):
            V=Dmaps[:,:,Indices[i],j]
            D1[:,:,i]=np.max(V,2)
        D2[:,:,:,j]=D1
        D1[D1==0]=np.nan
           
    else:
        for i in range(S[2]):
            V=Dmaps[:,:,i,j]
            D1[:,:,i]=V 
            

    print(j)
    for i in range(Nstack):
        plt.subplot(1,5,i+1)
        plt.imshow(Dmean[:,:,i],cmap=plt.cm.gray)
        plt.imshow(D1[:,:,i], cmap=my_cmap,interpolation='none')
        frame1 = plt.gca()
        frame1.axes.get_xaxis().set_visible(False)
        frame1.axes.get_yaxis().set_visible(False)
        
    plt.show()
    
   # plt.plot(TS_ROI[Order[j],:])
    plt.plot(DTvar[:,j])
    plt.plot(Xk[3,:]/np.std(Xk[3,:])+0.5,color=(1,0,0))   
    plt.plot(Xk[4,:]/np.std(Xk[4,:])+0.5,color=(0,1,0))
    plt.plot(Xk[5,:]/np.std(Xk[5,:])+0.5,color=(0.5,0.5,0))    
    #plt.plot(Xk[3,:]/np.std(Xk[1,:])+0.5,color=(0,0.5,1))
    
    plt.show()
    
    Label_ICs.append(raw_input())
    if Label_ICs[j]=='':
        Good_ICs[j]=0
    else:
        Good_ICs[j]=1

In [56]:
plt.plot(Xk[3,:])


Out[56]:
[<matplotlib.lines.Line2D at 0x7f25bf6d59d0>]

In [43]:
#zip(range(S[3]),Label_ICs)

In [44]:
set(Label_ICs)


Out[44]:
{'', 'alpha', 'beta', 'gamma'}

In [46]:
Xksmoothed=np.zeros(Xk.shape)

Xksmoothed[3,:]=np.convolve(Xk[3,999:Xk.shape[1]-1000],np.ones(2000)/2000)

Xksmoothed[4,:]=np.convolve(Xk[4,999:Xk.shape[1]-1000],np.ones(2000)/2000)

Xksmoothed[5,:]=np.convolve(Xk[5,999:Xk.shape[1]-1000],np.ones(2000)/2000)

Xkdff=Xk-Xksmoothed

In [47]:
Rsq=np.zeros((1,S[3]))
Betas=np.zeros((3,S[3]))

In [48]:
from sklearn import linear_model

In [49]:
algorithm = linear_model.LinearRegression()

In [50]:
for j in range(S[3]):
    model = algorithm.fit(Xkdff[range(3,6),:].T, DT[:,j])
    Betas[:,j] = model.coef_
    Rsq[:,j] = model.score(Xkdff[range(3,6),:].T,DT[:,j])

In [59]:
for i in range(S[3]):
    if Label_ICs[i]!='':
        print(Label_ICs[i], Betas[0,i]*10000)


('Alpha1_Gamma2', -0.54723687753156425)
('Gamma4', 0.87442981065524117)
('Gamma3', 1.1587739157747836)
('Betap2', 2.0413201265222627)
('Gamma3', 1.1736089126842131)
('Betap2', -3.2030429290409543)
('Gamma1', -0.10577683575359548)
('Beta2', 0.34781722783709623)
('Betap1', 0.049159500255733284)
('Betap2', -0.82837281582816302)
('Gamma4', 6.5960543496350974)
('Alpha2_Alphp2', 65.318203104034183)
('Alpha2_Alphap2', 1.1920628863508345)
('Gamma5', 1.3289772852377506)
('Gamma5', -12.950389307191598)
('Betap2', -1.1813428848847813)
('Alpha3', -0.82180967300770014)
('Betap2', -2.5040544154496009)
('Gamma4', 0.41170256171409136)
('Betap1', -0.31004105502059409)
('Beta1_Betap1', -0.77596009396280408)
('Gamma5', -1.0399070308727782)
('Gamma5', 0.10929957091724106)
('Gamma5', -2.9461569715414697)
('Beta1', 0.059488360305598988)
('Alphap3', 0.084438620278406956)
('Alphap3', -0.035190187667946973)
('Alpha1', 0.28768685047710929)
('Gamma1', -0.050391562685823968)

In [55]:
for i in range(S[3]):
    if Label_ICs[i]!='':
        print(Label_ICs[i], Rsq[:,i])


('Alpha1_Gamma2', array([ 0.08653803]))
('Gamma4', array([ 0.33969677]))
('Gamma3', array([ 0.51354923]))
('Betap2', array([ 0.21229193]))
('Gamma3', array([ 0.33104936]))
('Betap2', array([ 0.21715336]))
('Gamma1', array([ 0.01446704]))
('Beta2', array([ 0.10737468]))
('Betap1', array([ 0.01596101]))
('Betap2', array([ 0.12899872]))
('Gamma4', array([ 0.43716086]))
('Alpha2_Alphp2', array([ 0.07717476]))
('Alpha2_Alphap2', array([ 0.09897522]))
('Gamma5', array([ 0.19401563]))
('Gamma5', array([ 0.32785547]))
('Betap2', array([ 0.25469116]))
('Alpha3', array([ 0.11663654]))
('Betap2', array([ 0.09931033]))
('Gamma4', array([ 0.37712335]))
('Betap1', array([ 0.04749616]))
('Beta1_Betap1', array([ 0.37303982]))
('Gamma5', array([ 0.29313391]))
('Gamma5', array([ 0.07074086]))
('Gamma5', array([ 0.10092685]))
('Beta1', array([ 0.09195625]))
('Alphap3', array([ 0.14286865]))
('Alphap3', array([ 0.05731171]))
('Alpha1', array([ 0.10250902]))
('Gamma1', array([ 0.0688187]))

In [53]:
List1=[(Label_ICs[i],i) for i in range(S[3])]
Newlist=sorted(List1, key=lambda List1: List1[0])

Neworder=[Newlist[i][1] for i in range(S[3])]

NewDT=DTvar[:,Neworder[:]].T

for j in range(len(Neworder)):
    A=NewDT[:,j]
    V=np.sqrt(np.var(A))
    NewDT[:,j]=A/V

C1=np.zeros([16,3])
C1[0][:]=(1,0,0)
C1[1][:]=(0,1,0)
C1[2][:]=(0,0,1)
C1[3][:]=(0.8,0.8,0)
C1[4][:]=(0,1,1)
C1[5][:]=(1,0,1)
C1[6][:]=(1,0.5,0)
C1[7][:]=(0,1,0.5)
C1[8][:]=(0.5,0,1)
C1[9][:]=(0.8,0.8,0.5)
C1[10][:]=(0.5,1,1)
C1[11][:]=(1,0.5,1)
C1[12]=(0.5,0.5,0.5)
C1[13]=(0.2,0.5,0.5)
C1[14]=(0.5,0.2,0.5)
C1[15]=(0.5,0.5,0.2)
h=3

Newmaps=Dmaps[:,:,:,Neworder[:]]

L=len(set([Label_ICs[Neworder[i]] for i in range(len(Neworder))]))

Regionmaps=np.zeros([S[0],S[1],L,3])
Datasort=np.zeros([S[0],S[1],S[2],L,3])

Regionname=[]

DMapsordered=Dmapso[:,:,:,Neworder[:]]

j=0
i=0
k=Label_ICs[Neworder[0]]
m=0
Regionname.append(Label_ICs[Neworder[i]])
for i in range(len(Neworder)):
    
    #C2=C1[i%6][:]
    for l in range(3):
        M=np.max(np.squeeze(np.reshape(Newmaps[:,:,:,i],S[0]*S[1]*S[2])))
        Regionmaps[:,:,j,l]=Regionmaps[:,:,j,l]+0.6*np.max(DMapsordered[:,:,:,i],2)*C1[i%12+1][l]/M
        Datasort[:,:,:,j,l]=Datasort[:,:,:,j,l]+Dmaps[:,:,:,Neworder[i]]*C1[i%15+1][l] 
    i=i+1
    m=m+1
    if i<len(Neworder):
        k1=Label_ICs[Neworder[i]]
        
        
    if k1 != k:
        j=j+1
        k=k1
        m=0
        Regionname.append(Label_ICs[Neworder[i]])

pylab.rcParams['figure.figsize'] = (14, 5)
import scipy
from scipy import ndimage
j=0
m=0
L=0
k=Label_ICs[Neworder[0]]
for i in range(len(Neworder)):
    m=m+1
    
    
    if i<len(Neworder):
        k1=Label_ICs[Neworder[i]]
        
    if k1 != k:
        
        k=k1
        m=0
        
        plt.show()
        plt.figure(2*j+1)
        Rotated_Plot = ndimage.rotate(Regionmaps[:,:,j], -90)
        IM=plt.imshow(Rotated_Plot) 
        frame1 = plt.gca()
        frame1.axes.get_xaxis().set_visible(False)
        frame1.axes.get_yaxis().set_visible(False)
        j=j+1
        plt.figure(2*j)
        plt.plot(Xk[0,:]/np.std(Xk[0,:])+0.5,color=(1,0,0))   
        plt.plot(Xk[1,:]/np.std(Xk[1,:])+0.5,color=(0,1,0))
        plt.plot(Xk[2,:]/np.std(Xk[1,:])+0.5,color=(0.5,0.5,0))    
        #plt.plot(Xk[3,:]/np.std(Xk[1,:])+0.5,color=(0,0.5,1))
    plt.plot(NewDT[i,:]+h*m,color=C1[i%12+1][:])
    print(Neworder[i])
    print(Rsq[:,Neworder[i]])
    print(Betas[:,Neworder[i]])
plt.figure(2*j+1)
Rotated_Plot = ndimage.rotate(Regionmaps[:,:,j], -90)
IM=plt.imshow(Rotated_Plot)
frame1 = plt.gca()
frame1.axes.get_xaxis().set_visible(False)
frame1.axes.get_yaxis().set_visible(False)
print(Neworder)


1
[ 0.60440529]
[  1.48149049e-04  -1.20482913e-05  -1.57655564e-06]
5
[ 0.45951915]
[ -2.26585909e-04   1.95832046e-05   2.33390292e-06]
6
[ 0.57852034]
[  8.51136119e-05  -1.74192621e-06  -8.31713863e-07]
8
[ 0.39823068]
[ -2.29627621e-04   1.21536934e-05   1.07895471e-06]
9
[ 0.20644194]
[ -2.75909587e-04   4.74332036e-05  -1.42405614e-05]
12
[ 0.27295523]
[  6.54380750e-06  -2.44484127e-06  -8.10175374e-08]
14
[ 0.12718678]
[ -7.40715566e-05   1.71051103e-05  -2.09201286e-06]
16
[ 0.56185344]
[  5.45564625e-05  -3.82499569e-06  -5.81210587e-07]
17
[ 0.04688873]
[ -4.95999634e-05  -2.76037343e-05  -3.74238155e-06]
18
[ 0.42579978]
[  3.49988551e-05  -1.84513620e-06   6.31309069e-07]
21
[ 0.28464056]
[ -3.94584867e-04   8.94166123e-05  -4.72376330e-05]
22
[ 0.36769528]
[  5.77869247e-05   1.49686652e-06   6.87613601e-06]
23
[ 0.07156791]
[ -5.28842613e-06  -1.12258994e-05   2.85862542e-06]
26
[ 0.23793476]
[ -9.89470911e-05   2.28330584e-05  -3.65797728e-06]
28
[ 0.09278952]
[ -2.06352852e-04   5.32655261e-05  -8.23726204e-06]
29
[ 0.00567873]
[  1.57724751e-06   6.28400992e-06   4.93547217e-07]
31
[ 0.17733439]
[  1.71528652e-05  -9.32580465e-06   2.40807931e-07]
32
[ 0.23366283]
[  1.02887481e-04  -4.90349369e-06   7.18729998e-06]
33
[ 0.21231689]
[ -1.01154407e-04   5.95826630e-07  -1.77600719e-06]
35
[ 0.46853943]
[  2.02852295e-05   8.82580921e-08  -2.75983078e-07]
36
[ 0.46657505]
[  1.82065243e-05  -1.64135109e-06   1.32803111e-07]
37
[ 0.0175152]
[ -1.97380942e-05  -6.13810684e-06   1.99530677e-06]
38
[ 0.10908109]
[ -7.76740749e-06  -2.80578678e-06   1.11367424e-06]
39
[ 0.43344264]
[ -5.74408796e-05   8.46328574e-06  -3.28585895e-06]
41
[ 0.07723892]
[  1.08609743e-05  -5.16486819e-06  -2.53332738e-08]
42
[ 0.09992556]
[  4.09290213e-05  -1.61488163e-05   9.70243395e-07]
43
[ 0.11988515]
[  2.37148662e-05  -2.32553807e-06   7.53990573e-07]
44
[ 0.43855161]
[  6.13061870e-05  -8.06323994e-06  -6.17510659e-07]
46
[ 0.0587536]
[ -1.83710247e-05  -1.18089855e-05   2.08615454e-06]
47
[ 0.50096711]
[  1.19626015e-05  -6.86554810e-07   1.75186563e-07]
48
[ 0.27931838]
[ -9.02270576e-05   2.25984870e-05   1.22381291e-06]
50
[ 0.3978819]
[  1.49087100e-05  -2.33489423e-06  -2.92324620e-07]
51
[ 0.10484153]
[  4.27802781e-04  -1.11962978e-04   3.77974567e-05]
52
[ 0.38215355]
[  1.04919207e-05  -1.94371366e-06  -2.81247250e-07]
54
[ 0.18660507]
[ -5.19085112e-05  -1.48387377e-05   1.37678825e-06]
55
[ 0.3649687]
[  1.43213545e-05  -2.63815673e-06  -2.12864902e-08]
56
[ 0.3857039]
[  2.42145151e-05  -2.97697137e-06   8.03610664e-07]
57
[ 0.43500846]
[  1.42813842e-05  -1.93678345e-06   2.32858236e-07]
58
[ 0.07180129]
[  1.20241590e-04  -1.43491713e-04   2.91265093e-05]
59
[ 0.44402735]
[  3.04315554e-05  -5.54112478e-06   7.62690590e-07]
60
[ 0.5644723]
[ -1.43951133e-05   6.96502467e-07  -7.48976217e-07]
61
[ 0.46667989]
[  9.20014210e-04  -3.13884396e-05  -6.44577817e-06]
62
[ 0.39927774]
[ -1.80658001e-05   2.02303664e-06  -9.72313976e-07]
63
[ 0.38650205]
[  2.52984601e-05  -3.77273465e-06  -6.92002977e-07]
64
[ 0.24870145]
[ -3.60371992e-05   6.17740506e-06  -4.46467184e-06]
65
[ 0.05594583]
[ -1.91696799e-05  -1.43386714e-06  -2.17137364e-06]
66
[ 0.05046451]
[ -1.78491334e-06   5.64451156e-06  -3.52111383e-07]
67
[ 0.40034415]
[  1.53270244e-05  -1.31039257e-06  -7.92841755e-07]
68
[ 0.35685333]
[ -1.63557449e-05   1.93278553e-06  -5.42715251e-07]
69
[ 0.06446206]
[  7.12786861e-06  -3.96751830e-06  -2.47107684e-07]
71
[ 0.35780053]
[  1.45487074e-05  -1.68418065e-06  -8.03371793e-07]
73
[ 0.51654572]
[  2.22823636e-05  -1.38583381e-06   7.07086548e-07]
74
[ 0.39255427]
[  3.35344417e-05   1.67639063e-06  -1.12919404e-06]
75
[ 0.07135444]
[  1.33406657e-05  -1.30600720e-05   1.23094540e-06]
77
[ 0.02748409]
[ -1.85524874e-07   2.84206348e-06  -2.47908245e-06]
78
[ 0.06857135]
[  9.67999193e-06  -4.07249677e-06  -5.73003107e-07]
79
[ 0.47337025]
[ -2.48460859e-05   8.13925640e-07  -1.03186577e-07]
80
[ 0.52242135]
[ -4.94641638e-05   3.53821284e-06  -7.37165559e-07]
81
[ 0.08057163]
[  7.15571738e-06  -1.87362241e-06   1.06958652e-06]
82
[ 0.31188324]
[  6.49235412e-06  -1.68551416e-06   2.50539148e-07]
83
[ 0.50833061]
[ -2.39343636e-05   2.78838519e-07  -1.05026865e-06]
84
[ 0.47015199]
[ -6.97524421e-05   3.76041571e-06  -2.47319459e-06]
86
[ 0.45223873]
[  9.33841974e-05  -9.51778406e-06   8.11372137e-07]
88
[ 0.05262139]
[ -1.49878733e-07   1.55354340e-05  -3.92056909e-06]
89
[ 0.48729049]
[ -1.85204253e-05   9.02586889e-07  -9.94644076e-07]
90
[ 0.00566622]
[  3.93839633e-06   2.63183115e-06   9.58924762e-07]
91
[ 0.09103203]
[ -6.68520796e-06  -7.57874475e-08  -7.83821824e-07]
92
[ 0.11223939]
[  3.78601961e-04   9.50570348e-05   5.20647351e-05]
93
[ 0.02714604]
[  7.91175131e-07   4.92682359e-06   5.48276467e-07]
94
[ 0.11808592]
[  1.84697285e-05   5.22397209e-06  -1.98958506e-07]
95
[ 0.44919634]
[  1.55226527e-04  -6.94916054e-06   3.94804083e-07]
96
[ 0.06671611]
[  4.23621924e-06   8.24337745e-07   3.49143096e-07]
97
[ 0.26757576]
[ -7.46530241e-06   1.82073494e-06  -1.66135730e-07]
98
[ 0.02111767]
[  4.47832955e-06   7.80170978e-07   1.07783864e-06]
99
[ 0.40131352]
[ -2.04646609e-05   1.24467682e-06  -1.54636326e-06]
100
[ 0.06175251]
[ -6.95870907e-06  -3.66732142e-06   1.28491060e-06]
101
[ 0.47878486]
[ -4.05417464e-05   8.22493740e-07  -1.13459026e-06]
102
[ 0.38745785]
[  1.76585875e-05  -1.98449789e-06  -1.00653084e-06]
103
[ 0.26613496]
[  1.43270048e-05  -4.23819028e-06   1.94677691e-06]
104
[ 0.28792166]
[  1.07654194e-05  -6.30552001e-07   1.18997055e-06]
105
[ 0.13968493]
[ -3.64871661e-06   9.78833918e-07   2.68244274e-07]
106
[ 0.05260098]
[ -3.56516918e-07   2.04778917e-06  -1.01746894e-06]
107
[ 0.47614131]
[ -6.59749904e-05   3.39135711e-06  -3.48556676e-06]
108
[ 0.22484338]
[  1.82806890e-05  -3.28229838e-06   2.50171044e-06]
109
[ 0.01115945]
[  1.50219758e-05  -3.77110544e-05   1.10074915e-05]
110
[ 0.40611553]
[ -7.09894712e-06   4.30380819e-07  -3.11577341e-07]
111
[ 0.33020176]
[ -1.81949962e-05   2.64080494e-06  -2.37468686e-07]
112
[ 0.38046756]
[ -2.84990328e-05   3.04792285e-06  -2.96865326e-06]
113
[ 0.40711531]
[ -2.19412007e-05   2.18089135e-06  -2.97720680e-06]
114
[ 0.06570141]
[ -2.11361149e-05  -1.73425766e-06   3.63170842e-06]
115
[ 0.18253323]
[ -3.17785733e-05   1.11401879e-05  -7.87813017e-07]
116
[ 0.13115831]
[ -1.00315577e-04   7.95759194e-06  -1.61425671e-05]
117
[ 0.03268525]
[  4.95464766e-06   8.66269654e-07  -7.81046447e-07]
118
[ 0.34876917]
[  7.31540273e-05  -9.67156601e-06   3.92475903e-06]
119
[ 0.27222191]
[ -1.09373762e-05   5.60208405e-07  -8.67951528e-07]
120
[ 0.38736957]
[  6.58219073e-05  -7.93479701e-06   3.63254495e-06]
121
[ 0.24680217]
[  8.20377470e-06  -2.97053828e-08   8.59698582e-07]
122
[ 0.07663076]
[ -2.13450571e-06  -2.44116513e-06   4.38711971e-07]
123
[ 0.02128473]
[ -7.67875732e-06   3.23425921e-06  -7.50651508e-06]
124
[ 0.06360457]
[  3.50075888e-04  -3.53560178e-04  -7.77762944e-05]
125
[ 0.23286741]
[ -1.39126984e-05   1.41335234e-06  -2.03024987e-06]
126
[ 0.07241685]
[  2.33470042e-06  -1.30390227e-06   6.77567177e-07]
127
[ 0.22746526]
[ -1.47959099e-05   1.89628732e-06   1.45731079e-06]
128
[ 0.02882784]
[  4.69208233e-07  -7.95421534e-07  -3.87451468e-06]
129
[ 0.10260622]
[ -2.81249762e-06   8.55521213e-07  -3.15003034e-07]
131
[ 0.11675546]
[  2.73854547e-05   2.51526143e-07   2.79657621e-06]
132
[ 0.0291767]
[ -3.20156423e-06  -1.42020021e-06   1.30419796e-07]
133
[ 0.25843128]
[  1.28140277e-05   6.02285758e-07   4.37392073e-07]
134
[ 0.00948869]
[  4.21343325e-06   7.85422494e-08   1.35449661e-06]
135
[ 0.0106042]
[ -4.19097232e-07   8.70108851e-07   1.50859135e-07]
136
[ 0.23719767]
[  7.65924572e-06  -5.43967454e-07   3.58780513e-07]
137
[ 0.05200833]
[  3.46596641e-05  -2.44736008e-05   2.73510615e-07]
138
[ 0.4289752]
[ -3.16193845e-05   1.01824443e-06   4.72878965e-07]
139
[ 0.23989689]
[ -1.37547084e-05   1.23945570e-06   1.89106000e-06]
140
[ 0.18254165]
[ -4.12155126e-06   8.06133019e-07   3.48152770e-07]
141
[ 0.03754578]
[  2.37796009e-06   1.53473859e-06  -2.11312043e-06]
142
[ 0.29118693]
[ -1.98423573e-04   1.62802038e-06   1.30793305e-05]
143
[ 0.32012884]
[ -5.31865512e-06  -1.72848641e-08  -1.01362733e-07]
144
[ 0.2681305]
[ -8.24770298e-05   8.67591953e-06  -6.99075907e-06]
145
[ 0.39855878]
[ -1.30145707e-05   1.73146855e-06   2.46819801e-07]
146
[ 0.31445555]
[  1.59439995e-05  -1.15527269e-06  -4.70403780e-07]
147
[ 0.22836525]
[  7.80567062e-06  -6.88997398e-07   3.64651465e-07]
148
[ 0.25700983]
[  9.66567199e-06  -2.20767030e-08   3.64791247e-07]
149
[ 0.14773914]
[  7.34513927e-06   8.22443944e-07  -1.02523533e-07]
150
[ 0.2051793]
[ -7.70549368e-05  -5.50182264e-06  -2.07725720e-06]
151
[ 0.00988587]
[ -2.02780181e-06  -6.51805179e-07  -2.72279269e-07]
152
[ 0.01067998]
[ -2.28804493e-06  -7.03883595e-07  -1.76561969e-07]
153
[ 0.06268896]
[ -3.89264549e-06   9.82800957e-07  -9.05013307e-07]
154
[ 0.21152648]
[ -4.15653045e-06   5.47181763e-07  -3.57153147e-08]
155
[ 0.13978559]
[  2.48140860e-06  -6.94202541e-07  -2.55119546e-07]
156
[ 0.0444167]
[ -9.89841215e-06   1.52161031e-06  -8.14482391e-07]
157
[ 0.05854588]
[ -1.00338448e-06   2.08063248e-06   6.89504875e-08]
158
[ 0.03584879]
[  9.99189851e-07   4.18666620e-07  -5.00371409e-09]
159
[ 0.11928689]
[  9.12641616e-06   3.85819598e-07   9.22501683e-07]
160
[ 0.08733724]
[  2.71392884e-06  -1.32084532e-06  -1.01035540e-07]
161
[ 0.22142504]
[  1.26404616e-05  -1.04175452e-06   2.78713716e-07]
162
[ 0.33007414]
[ -3.49336082e-06   4.01379465e-07  -3.29494781e-07]
163
[ 0.02128945]
[ -1.33127299e-06  -7.21768569e-07   2.70469838e-07]
164
[ 0.19544115]
[  1.58257287e-05  -5.65396823e-07   1.26973711e-06]
165
[ 0.07824226]
[ -1.84201937e-05  -5.53754093e-06  -7.17410460e-09]
166
[ 0.11887581]
[  1.10832502e-05  -1.11868161e-08   2.89914854e-07]
167
[ 0.02945885]
[ -3.10239111e-06   6.41300964e-07  -3.76625658e-07]
168
[ 0.17979121]
[ -3.81046963e-06   7.76161779e-07   2.95845532e-08]
169
[ 0.0072765]
[ -2.03185728e-06  -7.59027000e-07   3.29610307e-07]
170
[ 0.01433585]
[  4.79610274e-06  -2.17349183e-06  -3.74796503e-07]
171
[ 0.08876471]
[ -3.10756490e-06  -7.62545699e-07  -4.37484273e-07]
172
[ 0.00937374]
[  9.90249007e-07   6.19276067e-08  -1.59966126e-07]
173
[ 0.00879225]
[ -1.56832983e-06  -2.99400338e-06  -9.23963891e-07]
174
[ 0.02989077]
[  1.19943410e-05  -5.68010142e-06  -1.83578226e-06]
175
[ 0.09581484]
[ -8.50909238e-06  -1.50324155e-06  -1.73690977e-07]
19
[ 0.0807208]
[ 0.00612204  0.00083189  0.00046216]
20
[ 0.10010684]
[  1.10354505e-04   1.45054100e-05   7.37297203e-06]
27
[ 0.10625379]
[ -6.80252277e-05   9.81535436e-06  -8.95972274e-06]
85
[ 0.10528356]
[  6.79548949e-06   4.21730327e-07  -2.27660247e-06]
87
[ 0.03170764]
[ -1.69738867e-06  -1.77958403e-06   2.00939110e-06]
/usr/local/lib/python2.7/dist-packages/ipykernel/__main__.py:95: RuntimeWarning: invalid value encountered in divide
/usr/local/lib/python2.7/dist-packages/ipykernel/__main__.py:96: RuntimeWarning: invalid value encountered in divide
/usr/local/lib/python2.7/dist-packages/ipykernel/__main__.py:97: RuntimeWarning: invalid value encountered in divide
4
[ 0.20372292]
[  1.79699531e-04  -3.77676117e-05   7.01046099e-06]
11
[ 0.10706434]
[  2.97072980e-05  -1.01794390e-05  -6.95589719e-07]
40
[ 0.0983168]
[  1.39894668e-05  -6.73570053e-06  -6.69860090e-07]
76
[ 0.09064047]
[  5.02474681e-06  -1.27157102e-06   9.83463639e-07]
0
[ 0.0868241]
[ -5.12374751e-05  -1.28254589e-06  -1.22450180e-06]
2
[ 0.32342245]
[  7.81336049e-05  -1.47969903e-05   4.10198857e-06]
3
[ 0.46854793]
[  9.98842270e-05  -1.08197906e-05   3.66226874e-06]
7
[ 0.29408985]
[  9.95934370e-05  -8.59350516e-06   7.41394118e-06]
10
[ 0.01566797]
[ -1.24226147e-05  -7.19325807e-06   8.24195817e-06]
13
[ 0.01322348]
[  4.72344253e-06  -3.79058863e-06   4.57144033e-06]
15
[ 0.39936636]
[  5.66074460e-04  -3.43149692e-05   3.22939982e-05]
24
[ 0.18194178]
[  1.13000521e-04  -3.28905827e-05   5.21972657e-06]
25
[ 0.30512798]
[ -1.09187340e-03   2.68223847e-04  -8.81408340e-05]
30
[ 0.35308937]
[  3.53326171e-05  -4.25714190e-06   1.37374335e-06]
34
[ 0.04515204]
[ -2.75529874e-05  -9.51869020e-07   1.89675690e-06]
45
[ 0.34116791]
[ -6.74210907e-05   2.41387513e-06  -3.34459220e-06]
49
[ 0.09440854]
[  8.03235903e-05   7.90264873e-07  -3.51721998e-06]
53
[ 0.35972447]
[  2.61140594e-05  -3.34746306e-06   1.21273613e-06]
70
[ 0.50932284]
[ -1.06083416e-05   1.38786657e-06   4.59518400e-08]
72
[ 0.10517147]
[ -2.25510311e-04   1.74773555e-04  -8.22019723e-06]
130
[ 0.0967829]
[  2.68438251e-05   1.09463179e-06  -4.94932380e-06]
[1, 5, 6, 8, 9, 12, 14, 16, 17, 18, 21, 22, 23, 26, 28, 29, 31, 32, 33, 35, 36, 37, 38, 39, 41, 42, 43, 44, 46, 47, 48, 50, 51, 52, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 71, 73, 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 86, 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, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 19, 20, 27, 85, 87, 4, 11, 40, 76, 0, 2, 3, 7, 10, 13, 15, 24, 25, 30, 34, 45, 49, 53, 70, 72, 130]

In [ ]:
plt.plot(Xkdff.T)

In [ ]: