wPath = sys.argv[4]
perms = int(sys.argv[5])
damp = float(sys.argv[6])
#outPath = sys.argv[7]

	
t = np.loadtxt(tPath)
X = np.loadtxt(xPath)
if wPath == 'NA':
	wV = []
else:
	wV = np.loadtxt(wPath)

x = X[index,:]

p,w,g = estSigGStat(x,t,wV = wV, nPerm=perms,permEst=False,damp=damp)
if np.isnan(p) or p==0:
	p,w,g = estSigGStat(x,t,wV = wV, nPerm=perms*100,permEst=False,damp=damp)

#f = open(outPath,'a')
#f.write('>>\t'+str(index)+'\t'+str(p)+'\t'+str(w)+'\n')

#f.flush()
#os.fsync(f)
#f.close()
if ~np.isnan(p): out = '>>\t'+str(index)+'\t%05.4E\t%05.4E\t%05.4E\n' % (p,w,g)
else: out = '>>\t'+str(index)+'\tnan\tnan\tnan\n'

print(out)

Example #2
0
wV = (2*np.pi/n)*np.arange(1,int(n/2))

for i in range(100):
	x[i,:] =  e*np.random.randn(n)

b = np.sqrt(2)
for i in range(100,200):
	w = np.random.rand(1)*(np.max(wV)-np.min(wV))+np.min(wV)
	s = np.random.rand(1)*2.0*n - n
	x[i,:] = b*np.cos(w*t+s) + e*np.random.randn(n)

#g = np.zeros(200)
#for i in range(200):
#	g[i],wTmp = fourierSeries.gStatMax(x[i,:],t,wV)
#
#np.savetxt('g.dat',g)

p = np.zeros(200)
for i in range(200):
	p[i],wTmp = fourierSeries.estSigGStat(x[i,:],t,wV,300,False)

np.savetxt('p.dat',p)

tmp = -1*np.log10(p)
m = np.median(tmp)
plt.plot(tmp,'o');plt.plot([0,len(p)],[m,m]);plt.show()