Manual Tables¶
Manual tables are populated during experiments through a variety of interfaces. Not all manual information is entered by typing. Automated software can enter it directly into the database. What makes a manual table manual is that it does not perform any computations within the DataJoint pipeline.
The following code defines three manual tables Animal
, Session
, and Scan
:
@schema
class Animal(dj.Manual):
definition = """
# information about animal
animal_id : int # animal id assigned by the lab
---
-> Species
date_of_birth=null : date # YYYY-MM-DD optional
sex='' : enum('M', 'F', '') # leave empty if unspecified
"""
@schema
class Session(dj.Manual):
definition = """
# Experiment Session
-> Animal
session : smallint # session number for the animal
---
session_date : date # YYYY-MM-DD
-> User
-> Anesthesia
-> Rig
"""
@schema
class Scan(dj.Manual):
definition = """
# Two-photon imaging scan
-> Session
scan : smallint # scan number within the session
---
-> Lens
laser_wavelength : decimal(5,1) # um
laser_power : decimal(4,1) # mW
"""