示例#1
0
def cacheIsolateSubset(cfg):
	cacheFileName = pyroprinting.getIsolatesCacheFileName(cfg)
	if os.path.isfile(cacheFileName):
		return

	isolates = pyroprinting.loadIsolatesFromFile("isolatesAll.pickle")

	isolateSubset = pyroprinting.getRandomSubset(isolates, cfg)
	with open(cacheFileName, mode='w+b') as cacheFile:
		pickle.dump(isolateSubset, cacheFile)
示例#2
0
def loadIsolateList(filename):
	cfg = config.loadConfig()
	isolates = pyroprinting.loadIsolatesFromFile("isolatesAll.pickle")
	isolateIdMap = {iso.name.strip(): iso for iso in isolates}

	with open(filename) as listFile:
		isoIds = {isoId.strip().strip("'").strip() for isoId in listFile.readline().split(',')}

	# print(isoIds)

	missingIsos = [iso.name for iso in isolates if iso.name.strip() not in isoIds]
	extraIsos = [isoId for isoId in isoIds if isoId not in isolateIdMap]
	print(extraIsos)
	print("extraIsoCount: {}".format(len(extraIsos)))
	print(missingIsos)
	print("missingIsoCount: {}".format(len(missingIsos)))

	sharedIsos = [iso for iso in isolates if iso.name.strip() in isoIds]

	print("{}/{} shared".format(len(sharedIsos), len(isolates)))
	with open("isolatesShared.pickle", mode='w+b') as cacheFile:
		pickle.dump(sharedIsos, cacheFile)
示例#3
0
    # fullGetClusters = {frozenset(cluster) for cluster in fullGetClusters}
    # fullPopClusters = {frozenset(cluster) for cluster in fullPopClusters}
    preFullClusters = {frozenset(cluster) for cluster in preFullClusters}

    # printClusters(preFullClusters)
    # assert len(getMultipleClusterPoints(isolates, preFullClusters)) == 0
    assert spatialPopClusters == preFullClusters
    # assert spatialGetClusters == spatialPopClusters
    # assert fullGetClusters == fullPopClusters
    # assert verifyClusters(isolates, correctNeighbors, cfg.minNeighbors, clusters)


if __name__ == "__main__":
    cfg = config.loadConfig()
    # isolates = pyroprinting.loadIsolates(cfg)
    isolates = pyroprinting.loadIsolatesFromFile("isolates{}.pickle".format(sys.argv[1]))
    # correctNeighbors = fullsearch.getNeighborsMap(isolates, cfg)

    print(sys.argv)
    if sys.argv[2] == "spatial":
        index = spatial.SpatialIndex(isolates, cfg)
    elif sys.argv[2] == "fullsearch":
        index = fullsearch.FullSearchIndex(isolates)
    else:
        print("bad index. use 'spatial' or 'fullsearch'")

    if sys.argv[3] == "dbscan":
        dbscan(index, cfg.radii, cfg.minNeighbors)
    elif sys.argv[3] == "popDBSCAN":
        popDBSCAN(index, cfg.radii, cfg.minNeighbors)
    else: