1+ import datajoint as dj
2+ from . import data_dir
3+
4+
5+ # fail-safe user name retrieval
6+ username = dj .conn ().conn_info ['user' ]
7+ schema = dj .schema ('{}_tutorial_pipeline' .format (username ))
8+
9+
10+ # Table definitions
11+
12+ @schema
13+ class Mouse (dj .Manual ):
14+ definition = """
15+ # Experimental animals
16+ mouse_id : int # Unique animal ID
17+ ---
18+ dob=null : date # date of birth
19+ sex="unknown" : enum('M','F','unknown') # sex
20+ """
21+
22+
23+ @schema
24+ class Session (dj .Manual ):
25+ definition = """
26+ # Experiment session
27+ -> Mouse
28+ session_date : date # date
29+ ---
30+ experiment_setup : int # experiment setup ID
31+ experimenter : varchar(100) # experimenter name
32+ data_path='' : varchar(255) #
33+ """
34+
35+
36+ # Insert the following data into the table
37+
38+ mouse_data = [
39+ {'dob' : "2017-03-01" , 'mouse_id' : 0 , 'sex' : 'M' },
40+ {'dob' : "2016-11-19" , 'mouse_id' : 1 , 'sex' : 'M' },
41+ {'dob' : "2016-11-20" , 'mouse_id' : 2 , 'sex' : 'unknown' },
42+ {'dob' : "2016-12-25" , 'mouse_id' : 5 , 'sex' : 'F' },
43+ {'dob' : "2017-01-01" , 'mouse_id' : 10 , 'sex' : 'F' },
44+ {'dob' : "2017-01-03" , 'mouse_id' : 11 , 'sex' : 'F' },
45+ {'dob' : "2017-05-12" , 'mouse_id' : 100 , 'sex' : 'F' }
46+ ]
47+
48+ session_data = [
49+ {'experiment_setup' : 0 ,
50+ 'experimenter' : 'Edgar Y. Walker' ,
51+ 'mouse_id' : 0 ,
52+ 'session_date' : "2017-05-15" ,
53+ 'data_path' : data_dir .as_posix ()
54+ },
55+ {'experiment_setup' : 0 ,
56+ 'experimenter' : 'Edgar Y. Walker' ,
57+ 'mouse_id' : 0 ,
58+ 'session_date' : "2017-05-19" ,
59+ 'data_path' : data_dir .as_posix ()
60+ },
61+ {'experiment_setup' : 1 ,
62+ 'experimenter' : 'Fabian Sinz' ,
63+ 'mouse_id' : 5 ,
64+ 'session_date' : "2017-01-05" ,
65+ 'data_path' : data_dir .as_posix ()
66+ },
67+ {'experiment_setup' : 100 ,
68+ 'experimenter' : 'Jacob Reimer' ,
69+ 'mouse_id' : 100 ,
70+ 'session_date' : "2017-05-25" ,
71+ 'data_path' : data_dir .as_posix ()
72+ }
73+ ]
74+
75+ Mouse .insert (mouse_data , skip_duplicates = True )
76+ Session .insert (session_data , skip_duplicates = True )
0 commit comments