forked from neurosynth/neurosynth-web
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup_database.py
59 lines (44 loc) · 1.88 KB
/
setup_database.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
from nsweb.core import create_app, db, app
from nsweb.initializers import settings
from nsweb.initializers import database_builder
import os
def main():
create_app(debug=settings.DEBUG)
import nsweb.models #registers models
print "Initializing DatabaseBuilder..."
# Create a new builder from a pickled Dataset instance and populate the DB
# pass reset_dataset=False after first run to avoid rebuilding dataset
dataset = settings.PICKLE_DATABASE
db.app = app # Set context on DB
builder = database_builder.DatabaseBuilder(
db, dataset=dataset,
studies=os.path.join(settings.ASSET_DIR, 'database.txt'),
features=os.path.join(settings.ASSET_DIR, 'features.txt'),
reset_db=True, reset_dataset=True)
# reset_db=False, reset_dataset=False)
print "Adding analyses..."
if settings.PROTOTYPE:
analyses = ['emotion', 'language', 'memory', 'pain', 'visual',
'attention', 'sensory']
else:
analyses = None
builder.add_term_analyses(analyses=analyses, add_images=True, reset=True)
print "Adding studies..."
if settings.PROTOTYPE:
builder.add_studies(analyses=analyses, limit=500)
else:
builder.add_studies(analyses=analyses)
print "Adding feature-based meta-analysis images..."
builder.generate_analysis_images(
analyses=analyses, add_to_db=False, overwrite=True)
# print "Adding topic sets..."
# builder.add_topics(generate_images=True, add_images=True, top_n=40)
# print "Adding cognitive atlas information for available terms..."
# builder.add_cognitive_atlas_nodes()
print "Memory-mapping key image sets..."
builder.memory_map_images(include=['terms'], reset=True)
# print "Adding genes..."
# builder.add_genes()
#builder.memory_map_images(include=['terms', 'topics', 'genes'])
if __name__ == '__main__':
main()