def computePvectForRows(fname, beta=1):#, header=True, rowLabels=True) : columns,rows = ml.data_size(fname) ARowMags = [0]*rows P = [0]*rows with open(fname,'rb') as f : reader=csv.reader(f,delimiter=' ') for j,row in enumerate(reader) : if j!=0 : # print(j) j -= 1 for i,value in enumerate(row) : if i!=0: ARowMags[j] += float(value)**2 # print(ARowMags) ARowMagsSum= sum(ARowMags) for k in range(rows): P[k]= beta*ARowMags[k]/( ARowMagsSum ) return(P)
def buildCfromA(fname, c, beta=1 ) : cols,rows= ml.data_size(fname) P=computePvectForRows(fname, beta=1)#, header=True, rowLabels=True) print('Pvector done computing') C_sel = selectRowsForCmat(P, c) print('c rows selected') C=np.zeros([c,cols]) with open(fname,'rb') as f : reader=csv.reader(f,delimiter=' ') cnt=0 for j,row in enumerate(reader) : # print(row) if j==0 : pass elif j-1 in C_sel : # print(C[cnt,:]) # print(row[1:]) C[cnt,:]=(row[1:]) cnt+=1 return(C)