Example #1
0
def start_realcase(experimenTimes, mode, worksfolder_repost, workfolder_sim):
    timenow = int(time.strftime("%H", time.localtime(time.time())))
    worksfolder = workfolder_sim
    worksfolder_fig = gt.createFolder(worksfolder + 'figs\\')
    worksfolder_mat = gt.createFolder(worksfolder + 'graphs\\')
    from NetypesfromGraph import NetypesfromGraph as nety
    netky = nety()

    result = []
    startimer = time.clock()
    #     try:
    for casefile in os.listdir(worksfolder_repost):
        if os.path.splitext(casefile)[-1] != '.repost':
            return

        if os.path.exists(worksfolder_mat + '_' + str(mode) + '_' + casefile +
                          '_1.adj'):
            print '_' + str(mode) + '_' + casefile + '.adj'
            continue

        print worksfolder_repost + casefile
        [ma_fans, cbm_frs, act_micorcnt,
         inv_mention] = input_init_real(worksfolder_repost + casefile)[0:4]
        input = [ma_fans, cbm_frs, inv_mention, act_micorcnt]
        print inv_mention
        #     inputm = sp.asmatrix(input, long)
        personcnt = len(ma_fans)
        for i in range(experimenTimes):
            print '===============================================', i
            mat = getoutMatrix(personcnt, ma_fans, cbm_frs, inv_mention,
                               act_micorcnt, worksfolder_fig, mode)

            g = ig.Graph.Adjacency(mat.tolist())
            graphfilepath = str(worksfolder_mat + '_' + str(mode) + '_' +
                                casefile + '_' + str(i) + '.adj')
            #                 print graphfilepath
            g.write_adjacency(graphfilepath)
    #                 gt.drawgraph(g,giantornot=False,figpath=worksfolder+'figs\\'+str(modefans)+'_'+str(modemen)+'_'+str(i)+'.png',show=False)#sw


#             resultone = netky.start(g)
#             result.append(resultone)
#
#     xyz = zip(*result)
#     gt.saveList(xyz,worksfolder_mat+'_'+str(mode)+'_'+casefile+'_'+str(experimenTimes)+'.netattri',writype='w')

#     except:
#         pass
#             datapath2save = worksfolder_fig+'shapedis_'+str(personcnt)+'_'+str(experimenTimes)+'_'+str(modefans)+'_'+str(modemen)
#             classTypes_km(xyz,datapath2save,k=6,runtimes=10)

    endtimer = time.clock()
    duration = endtimer - startimer
    timestrline = str(time.asctime()) + ' in ' + str(
        duration /
        60) + 'mins of modefans '  #+str(modefans)+' modemen '+str(modemen)
    print timestrline
Example #2
0
 def start_sim(self,personcnt,experimenTimes,mode,worksfolder):           
 
     timenow = int(time.strftime("%H",time.localtime(time.time())))
 #     worksfolder = "G:\\HFS\\WeiboData\\CMO\\test\\"
     worksfolder_fig = gt.createFolder(worksfolder+'figs\\')
     worksfolder_mat = gt.createFolder(worksfolder+'graphs\\')
     from NetypesfromGraph import NetypesfromGraph as nety
     netky = nety()
     for modefans in [1,2,4]:#3,,5
         for modefr in [1,2,4]:#3,,5
             for modeal in [1,2,4]:#3,,5
                 for modemen in [1,2,4]:#3,,5
                     result = []
                     startimer = time.clock()
                     for i in range(experimenTimes):        
                         print '===============================================',i,modefans,modemen
                         [ma_fans,cbm_frs,inv_mention,act_micorcnt] = self.input_init(personcnt,fans_p=(modefans,1,10000),frs_p=(modefr,1,1000),micor_p=(modeal,0,1),men_p=(modemen,0,50))
                         input = [ma_fans,cbm_frs,inv_mention,act_micorcnt]
         #                 print act_micorcnt
                     #     inputm = sp.asmatrix(input, long)
                         
                         mat = self.getoutMatrix(personcnt,ma_fans,cbm_frs,inv_mention,act_micorcnt,worksfolder_fig,mode)
                         
                         g = ig.Graph.Adjacency(mat.tolist())
 #                         print g.vcount(),g.ecount()
                         graphfilepath = str(worksfolder_mat+str(personcnt)+'_'+str(experimenTimes)+'_'+str(i)+'_'+str(modefans)+'_'+str(modemen)+'.adj')
         #                 print graphfilepath
                         g.write_adjacency(graphfilepath)
 #                         if g.vcount()>50:
 #                             gt.drawgraph(g,giantornot=False,figpath=worksfolder+'figs\\'+str(modefans)+'_'+str(modemen)+'_'+str(i)+'.png',show=True)#sw
 #                             gt.drawgraph(g,giantornot=True,figpath=worksfolder+'figs\\'+str(modefans)+'_'+str(modemen)+'_'+str(i)+'giant.png',show=True)#sw
                         
                         
                         resultone = netky.start(g)
                         result.append(resultone)
                         
                     xyz = zip(*result)
                     gt.saveList(xyz,worksfolder_mat+str(personcnt)+'_'+str(experimenTimes)+'_'+str(modefans)+'_'+str(modefr)+'_'+str(modeal)+'_'+str(modemen)+'.netattri',writype='w')
                     
         #             datapath2save = worksfolder_fig+'shapedis_'+str(personcnt)+'_'+str(experimenTimes)+'_'+str(modefans)+'_'+str(modemen)
         #             classTypes_km(xyz,datapath2save,k=6,runtimes=10)
             
     endtimer = time.clock()
     duration = endtimer-startimer
     timestrline = str(time.asctime())+' in '+str(duration/60)+'mins of modefans '+str(modefans)+' modemen '+str(modemen)
     print timestrline
Example #3
0
def getLabels(att, workfolder_fig, k=6):
    x = zip(*att)

    xyz = x  #zip(*x)
    xyzz = gt.normlistlist(listlista=xyz, metacolcount=0,
                           sumormax='sum')  #xyz[1:]#
    xy = zip(*xyzz)  #[1:]
    z = zip(*xyz[:1])

    from NetypesfromGraph import NetypesfromGraph as nety
    netky = nety()

    labels, res = [], []
    #             print len(xy),xy
    labels, kmcenter, kmfit = netky.kmeans(xy, k=k, runtimes=1)
    #             labels.sort()
    #     print len(labels)#kmcenter,labels
    centername = workfolder_fig + 'shapedis_kmeans_center.center'

    gt.savefigdata(centername, kmcenter, labels, kmfit)
    #     gt.saveList(centername,kmcenter)
    return labels
Example #4
0
def compute_sim(workfolder_sim, fplist, experimentimes, mod):
    from NetypesfromGraph import NetypesfromGraph as nety
    netky = nety()
    #for mod in range(2,5):
    degs, indegs, outdegs, ccs, apls, diams = [], [], [], [], [], []
    for fp in fplist:
        for i in range(experimentimes):
            simf = "G:\\HFS\\WeiboData\\HFSWeibo_Sim\\test\\Mode" + str(
                mod) + '\\graphs\\' + '_' + str(
                    mod) + '_' + fp + '.repost_' + str(i) + '.adj'
            #         simf1 = workfolder_sim+'_'+str(mod)+'_'+fp+'.repost_1.adj'
            if os.path.exists(simf):
                g_sim = ig.Graph.Read_Adjacency(simf)
                res_sim = netky.start(g_sim)
                sim_resultset.append(res_sim)

                degs.extend(g_sim.degree())
                indegs.extend(g_sim.indegree())
                outdegs.extend(g_sim.outdegree())
                ccs.append(g_sim.transitivity_undirected(mode='0'))
                apls.append(g_sim.average_path_length())
                diams.append(g_sim.diameter())

    return degs, indegs, outdegs, ccs, apls, diams
Example #5
0
#     print distLabel,res,oneres
    return res

fig = plt.figure()
plt.plot(range(10))
fig.dpi = 80
fig.savefig("G:\\HFS\\WeiboData\\CMO\\temp.png", dpi=fig.dpi)
if __name__ == "__main__":
    personcnt = 20
    experimenTimes = 12
    timenow = int(time.strftime("%H", time.localtime(time.time())))
    worksfolder = "G:\\HFS\\WeiboData\\CMO\\test\\"
    worksfolder_fig = worksfolder + 'figs\\'
    worksfolder_mat = worksfolder + 'graphs\\'
    from NetypesfromGraph import NetypesfromGraph as nety
    netky = nety()
    for modefans in [1, 2, 4]:  #3,,5
        for modemen in [1, 2, 4]:  #,5
            result = []
            startimer = time.clock()
            for i in range(experimenTimes):
                print '===============================================', i, modefans, modemen
                [ma_fans, cbm_frs, inv_mention,
                 act_micorcnt] = input_init(personcnt,
                                            fans_p=(modefans, 1, 10000),
                                            frs_p=(1, 1, 1000),
                                            men_p=(modemen, 0, 50),
                                            micor_p=(1, 1, 1000))
                input = [ma_fans, cbm_frs, inv_mention, act_micorcnt]
                #     inputm = sp.asmatrix(input, long)