Skip to content

Commit 146c02e

Browse files
authored
Merge branch 'datajoint-company:master' into master
2 parents d7537dd + a760205 commit 146c02e

26 files changed

+2684
-3082
lines changed

.gitignore

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
1+
# OSX and python intermediate files
12
__pycache__/
23
.DS_Store
34
~*
45
*~
56
*.pyc
67
.ipynb_checkpoints/
7-
dj_local_conf.json
8-
9-
.idea/
8+
debug.log
109

10+
# DataJoint and setup files
11+
dj_local_con*.json
1112
julia/setup.jl
12-
debug.log
13+
.idea/
14+
temp*

00-Getting started.ipynb renamed to 00-Getting_started/00-Getting started.ipynb

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"cell_type": "markdown",
1212
"metadata": {},
1313
"source": [
14-
"Congratulations! If you are reading this, then you have successfully connected to the workshop JupyterHub and opened up your very first workshop notebook!\n",
14+
"Congratulations! If you are reading this, then you have successfully connected to the workshop JupyterHub and opened up your very first workshop notebook! These notebooks are oranized with numbers to highlight what should come next. First, we'll walk through the startup process. Next, you'll see an introduction to DataJoint, and how to structure a data pipeline. The Calcium Imaging and Electrophysiology folders show example data structures and analysis techniques from common experimental techniques. We've included some fill-in-the-blank sections for you to code yourself. If you want to see completed notebooks, see the folder of completed exercises.\n",
1515
"\n",
1616
"Before we start, remember that all of the edits you make in these tutorial notebooks are ***not persistent*** - they will be reset to the original content everytime you restart the server. However, you can easily download the notebooks that you're interested in keeping the changes."
1717
]
@@ -273,7 +273,7 @@
273273
"# if you did change your password, update the config\n",
274274
"# dj.config['database.password'] = 'ENTER YOUR NEW PASSWORD HERE'\n",
275275
"\n",
276-
"# and save it to dj_local_config.json\n",
276+
"# and save it globally within this environment\n",
277277
"dj.config.save_global()"
278278
]
279279
},
@@ -314,20 +314,20 @@
314314
"source": [
315315
"If all of the above worked, then you are now ready to continue on with the tutorial!\n",
316316
"The next step in the tutorial is to:\n",
317-
"1. learn the basic of the DataJoint framework with [01-DataJoint 101](./01-DataJoint%20101%20-%20Interactive.ipynb)\n",
317+
"1. learn the basic of the DataJoint framework with [01-DataJoint Basics](./01-DataJoint%20Basics%20-%20Interactive.ipynb)\n",
318318
"2. data ingestion in a pipeline, with practical examples in 2 domains:\n",
319-
" + [02-electrophysiology](./electrophysiology/02-Imported%20Tables%20-%20Interactive.ipynb)\n",
320-
" + [02-calcium imaging](./calcium_imaging/02-Imported%20Tables%20-%20Interactive.ipynb)\n",
319+
" + [02-electrophysiology](/02-Electrophysiology/02-Imported%20Tables%20-%20Interactive.ipynb)\n",
320+
" + [02-calcium imaging](./01-Calcium_Imaging/02-Imported%20Tables%20-%20Interactive.ipynb)\n",
321321
"3. more advanced topics on built-in automatic computation of the pipeline with DataJoint, also with practical examples from:\n",
322-
" + [03-electrophysiology](./electrophysiology/03-Computed%20Table%2C%20Lookup%20Table%2C%20and%20Part%20Table%20-%20Completed.ipynb)\n",
323-
" + [03-calcium imaging](./calcium_imaging/03-Computed%20Table%2C%20Lookup%20Table%2C%20and%20Part%20Table%20-%20Completed.ipynb)"
322+
" + [03-electrophysiology](/02-Electrophysiology/03-Computed%20Table%2C%20Lookup%20Table%2C%20and%20Part%20Table%20-%20Completed.ipynb)\n",
323+
" + [03-calcium imaging](./01-Calcium_Imaging/03-Computed%20Table%2C%20Lookup%20Table%2C%20and%20Part%20Table%20-%20Completed.ipynb)"
324324
]
325325
},
326326
{
327327
"cell_type": "markdown",
328328
"metadata": {},
329329
"source": [
330-
"As you will find out that these tutorial notebooks are meant to be interactive. There will be empty cells meant for you to write the code yourself, as mini exercies. To access the notebooks with complete solutions, visit this [folder](./completed)."
330+
"As you will find out that these tutorial notebooks are meant to be interactive. There will be empty cells meant for you to write the code yourself, as mini exercises. To access the notebooks with complete solutions, visit this [folder](../03-Completed_Exercises)."
331331
]
332332
}
333333
],
@@ -347,7 +347,7 @@
347347
"name": "python",
348348
"nbconvert_exporter": "python",
349349
"pygments_lexer": "ipython3",
350-
"version": "3.7.0"
350+
"version": "3.7.3"
351351
}
352352
},
353353
"nbformat": 4,

01-DataJoint 101 - Interactive.ipynb renamed to 00-Getting_started/01-DataJoint Basics - Interactive.ipynb

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
"1. learn what a data pipeline is\n",
1717
"2. create our first simple data pipeline in DataJoint\n",
1818
"3. insert some data into the pipeline\n",
19-
"4. basic queries to flexible explore the data pipeline\n",
19+
"4. basic queries to flexibly explore the data pipeline\n",
2020
"5. fetch the data from the pipeline\n",
2121
"6. delete entries from tables"
2222
]
@@ -80,7 +80,7 @@
8080
"metadata": {},
8181
"source": [
8282
"> * Your lab houses many mice, and each mouse is identified by a unique ID. You also want to keep track of information about each mouse such as their date of birth, and gender.\n",
83-
"> * As a hard working neuroscientist, you perform experiments every day, sometimes working with more than one mouse in a day! However, on an any given day, a mouse undergoes at most one recording session.\n",
83+
"> * As a hard working neuroscientist, you perform experiments every day, sometimes working with more than one mouse in a day! However, on any given day, a mouse undergoes at most one recording session.\n",
8484
"> * For each experimental session, you would like to record what mouse you worked with and when you performed the experiment. You would also like to keep track of other helpful information such as the experimental setup you worked on. \n",
8585
"\n",
8686
"> * In a session of electrophysiology\n",
@@ -148,7 +148,7 @@
148148
"cell_type": "markdown",
149149
"metadata": {},
150150
"source": [
151-
"In the current notebook, we will design the tables for mouse and experimental sessions, the rest of the pipeline will be designed in the subdirectory `electrophysioloy` and `calcium_imaging`"
151+
"In the current notebook, we will design the tables for mouse and experimental sessions, the rest of the pipeline will be designed in the subdirectory `electrophysiology` and `calcium_imaging`"
152152
]
153153
},
154154
{
@@ -555,7 +555,7 @@
555555
"source": [
556556
"Note that, to uniquely identify an experimental session (or simply a **session**), we need to know the mouse that the session was about. In other words, a session cannot existing without a corresponding mouse! \n",
557557
"\n",
558-
"With **mouse** already represented as a table in our pipeline, we say that the session **depends on** the mouse! We would graphically represent this in an **entity relationship diagram (ERD)** by drawing the line between two tables, with the one below (**session**) dependeing on the one above (**mouse**)."
558+
"With **mouse** already represented as a table in our pipeline, we say that the session **depends on** the mouse! We could graphically represent this in an **entity relationship diagram (ERD)** by drawing the line between two tables, with the one below (**session**) dependeing on the one above (**mouse**)."
559559
]
560560
},
561561
{
@@ -590,7 +590,7 @@
590590
"cell_type": "markdown",
591591
"metadata": {},
592592
"source": [
593-
"You can actually generate the entity relationship diagram (ERD) on the fly by calling `dj.ERD` with the schema object"
593+
"You can actually generate something similar to an entity relationship diagram (ERD) on the fly by calling `dj.Diagram` with the schema object. Many of the symbols and features are the same as the ERD standard."
594594
]
595595
},
596596
{
@@ -599,7 +599,7 @@
599599
"metadata": {},
600600
"outputs": [],
601601
"source": [
602-
"dj.ERD(schema)"
602+
"dj.Diagram(schema)"
603603
]
604604
},
605605
{
@@ -746,7 +746,7 @@
746746
"cell_type": "markdown",
747747
"metadata": {},
748748
"source": [
749-
"We will introduce three major types of queries used in DataJoint:\n",
749+
"We will introduce four major types of queries used in DataJoint:\n",
750750
"* restriction (`&`) and negative restriction (`-`): filter data\n",
751751
"* join (`*`): bring fields from different tables together\n",
752752
"* projection (`.proj()`): focus on a subset of attributes\n",
@@ -911,7 +911,7 @@
911911
"cell_type": "markdown",
912912
"metadata": {},
913913
"source": [
914-
"Let's find all mouse that **is not male** AND **born after 2017-01-01**."
914+
"Let's find all mice that **are not male** AND **born after 2017-01-01**."
915915
]
916916
},
917917
{
@@ -983,7 +983,7 @@
983983
"cell_type": "markdown",
984984
"metadata": {},
985985
"source": [
986-
"All mice that has a session"
986+
"All mice that have a session"
987987
]
988988
},
989989
{
@@ -1534,15 +1534,27 @@
15341534
"\n",
15351535
"In the next session, we are going to extend our data pipeline with tables to represent **imported data** and define new tables to **compute and hold analysis results**.\n",
15361536
"\n",
1537-
"We will use both ephys and calcium imaging as example pipelines. The notebooks reside in the directory "
1537+
"We will use both ephys and calcium imaging as example pipelines:\n",
1538+
"+ [02-electrophysiology](../02-Electrophysiology/02-Imported%20Tables%20-%20Interactive.ipynb)\n",
1539+
"+ [02-calcium imaging](../01-Calcium_Imaging/02-Imported%20Tables%20-%20Interactive.ipynb)"
15381540
]
1541+
},
1542+
{
1543+
"cell_type": "code",
1544+
"execution_count": null,
1545+
"metadata": {},
1546+
"outputs": [],
1547+
"source": []
15391548
}
15401549
],
15411550
"metadata": {
1551+
"jupytext": {
1552+
"formats": "ipynb,py:light"
1553+
},
15421554
"kernelspec": {
1543-
"display_name": "Python 3",
1555+
"display_name": "workflow-array-ephys",
15441556
"language": "python",
1545-
"name": "python3"
1557+
"name": "workflow-array-ephys"
15461558
},
15471559
"language_info": {
15481560
"codemirror_mode": {
@@ -1554,7 +1566,7 @@
15541566
"name": "python",
15551567
"nbconvert_exporter": "python",
15561568
"pygments_lexer": "ipython3",
1557-
"version": "3.7.3"
1569+
"version": "3.9.4"
15581570
}
15591571
},
15601572
"nbformat": 4,

0 commit comments

Comments
 (0)