Skip to content

Instantly share code, notes, and snippets.

@bmcfee
Created December 11, 2014 21:01
Show Gist options
  • Save bmcfee/8ef20481b90cb540b1fd to your computer and use it in GitHub Desktop.
Save bmcfee/8ef20481b90cb540b1fd to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "",
"signature": "sha256:3686e54dab09729fdc98afaac10a0c8eb32a36e0e7dc6d3ebd226948eb3adbf4"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Data frames\n",
"\n",
"This notebook contains a first cut at representing MIR annotations in pandas dataframes."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Just my usual import cruft\n",
"\n",
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import seaborn\n",
"seaborn.set()\n",
"%matplotlib inline\n",
"np.set_printoptions(precision=3)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Stuff to load in a .lab file\n",
"\n",
"import glob\n",
"import mir_eval"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Just because I'm too lazy to write down a filename\n",
"\n",
"chordfiles = sorted(glob.glob('/home/bmcfee/data/beatles_iso/chordlab/*/*/*.lab'))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Import a chord annotation.\n",
"\n",
"intervals, labels = mir_eval.io.load_labeled_intervals(chordfiles[0])"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# What do the first ten records look like?\n",
"\n",
"zip(intervals[:10], labels[:10])"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 5,
"text": [
"[(array([ 0. , 2.612]), 'N'),\n",
" (array([ 2.612, 11.459]), 'E'),\n",
" (array([ 11.459, 12.922]), 'A'),\n",
" (array([ 12.922, 17.443]), 'E'),\n",
" (array([ 17.443, 20.41 ]), 'B'),\n",
" (array([ 20.41 , 21.908]), 'E'),\n",
" (array([ 21.908, 23.371]), 'E:7/3'),\n",
" (array([ 23.371, 24.857]), 'A'),\n",
" (array([ 24.857, 26.343]), 'A:min/b3'),\n",
" (array([ 26.343, 27.841]), 'E')]"
]
}
],
"prompt_number": 5
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Making it jamsy\n",
"\n",
"Let's say we want to include a confidence rating along with our labels and interval boundaries.\n",
"\n",
"I'll stack everything up as a list of tuples:\n",
"\n",
" `(time, duration, value, confidence)`"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"raw_data = zip(pd.to_timedelta(intervals[:, 0], unit='s'), # To make things clean later, we'll convert to timedelta here\n",
" pd.to_timedelta(intervals[:, 1] - intervals[:, 0], unit='s'), # \n",
" pd.Categorical(labels), # Again, to simplify subsequent operations, \n",
" # let's make labels categorical\n",
" np.abs(np.random.random_sample(size=len(labels))))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 6
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Load in the raw data\n",
"\n",
"df = pd.DataFrame(data=raw_data, \n",
" columns=['time', 'duration', 'value', 'confidence'])"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 7
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"df[:5]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>time</th>\n",
" <th>duration</th>\n",
" <th>value</th>\n",
" <th>confidence</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td> 00:00:00</td>\n",
" <td>00:00:02.612267</td>\n",
" <td> N</td>\n",
" <td> 0.001656</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>00:00:02.612267</td>\n",
" <td>00:00:08.846803</td>\n",
" <td> E</td>\n",
" <td> 0.148193</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>00:00:11.459070</td>\n",
" <td>00:00:01.462857</td>\n",
" <td> A</td>\n",
" <td> 0.715288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>00:00:12.921927</td>\n",
" <td>00:00:04.521547</td>\n",
" <td> E</td>\n",
" <td> 0.444096</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>00:00:17.443474</td>\n",
" <td>00:00:02.966888</td>\n",
" <td> B</td>\n",
" <td> 0.748427</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 8,
"text": [
" time duration value confidence\n",
"0 00:00:00 00:00:02.612267 N 0.001656\n",
"1 00:00:02.612267 00:00:08.846803 E 0.148193\n",
"2 00:00:11.459070 00:00:01.462857 A 0.715288\n",
"3 00:00:12.921927 00:00:04.521547 E 0.444096\n",
"4 00:00:17.443474 00:00:02.966888 B 0.748427"
]
}
],
"prompt_number": 8
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"df.dtypes"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 9,
"text": [
"time timedelta64[ns]\n",
"duration timedelta64[ns]\n",
"value object\n",
"confidence float64\n",
"dtype: object"
]
}
],
"prompt_number": 9
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Serialize the json object\n",
"serialized = df.to_json(orient='records',\n",
" default_handler=lambda x: x.total_seconds())\n",
"print serialized[:200], '...'"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"[{\"time\":0.0,\"duration\":2.612267,\"value\":\"N\",\"confidence\":0.0016555704},{\"time\":2.612267,\"duration\":8.846803,\"value\":\"E\",\"confidence\":0.1481930711},{\"time\":11.45907,\"duration\":1.462857,\"value\":\"A\",\"co ...\n"
]
}
],
"prompt_number": 10
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# How does it look in json?\n",
"import json\n",
"json.loads(serialized)[:5]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 11,
"text": [
"[{u'confidence': 0.0016555704,\n",
" u'duration': 2.612267,\n",
" u'time': 0.0,\n",
" u'value': u'N'},\n",
" {u'confidence': 0.1481930711,\n",
" u'duration': 8.846803,\n",
" u'time': 2.612267,\n",
" u'value': u'E'},\n",
" {u'confidence': 0.7152884202,\n",
" u'duration': 1.462857,\n",
" u'time': 11.45907,\n",
" u'value': u'A'},\n",
" {u'confidence': 0.4440958265,\n",
" u'duration': 4.521547,\n",
" u'time': 12.921927,\n",
" u'value': u'E'},\n",
" {u'confidence': 0.7484274408,\n",
" u'duration': 2.966888,\n",
" u'time': 17.443474,\n",
" u'value': u'B'}]"
]
}
],
"prompt_number": 11
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Deserialize\n",
"dfj = pd.DataFrame.from_dict(json.loads(serialized))\n",
"\n",
"# Cast the time fields to timedelta format\n",
"dfj.time = pd.to_timedelta(dfj.time, unit='s')\n",
"dfj.duration = pd.to_timedelta(dfj.duration, unit='s')\n",
"\n",
"# Re-order the columns to match df\n",
"dfj = dfj[df.keys()]"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"dfj.dtypes"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 13,
"text": [
"time timedelta64[ns]\n",
"duration timedelta64[ns]\n",
"value object\n",
"confidence float64\n",
"dtype: object"
]
}
],
"prompt_number": 13
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"df.dtypes"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 14,
"text": [
"time timedelta64[ns]\n",
"duration timedelta64[ns]\n",
"value object\n",
"confidence float64\n",
"dtype: object"
]
}
],
"prompt_number": 14
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import IPython.display"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 15
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Et voila!\n",
"\n",
"IPython.display.display(df[:5])\n",
"IPython.display.display(dfj[:5])"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>time</th>\n",
" <th>duration</th>\n",
" <th>value</th>\n",
" <th>confidence</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td> 00:00:00</td>\n",
" <td>00:00:02.612267</td>\n",
" <td> N</td>\n",
" <td> 0.001656</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>00:00:02.612267</td>\n",
" <td>00:00:08.846803</td>\n",
" <td> E</td>\n",
" <td> 0.148193</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>00:00:11.459070</td>\n",
" <td>00:00:01.462857</td>\n",
" <td> A</td>\n",
" <td> 0.715288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>00:00:12.921927</td>\n",
" <td>00:00:04.521547</td>\n",
" <td> E</td>\n",
" <td> 0.444096</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>00:00:17.443474</td>\n",
" <td>00:00:02.966888</td>\n",
" <td> B</td>\n",
" <td> 0.748427</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"metadata": {},
"output_type": "display_data",
"text": [
" time duration value confidence\n",
"0 00:00:00 00:00:02.612267 N 0.001656\n",
"1 00:00:02.612267 00:00:08.846803 E 0.148193\n",
"2 00:00:11.459070 00:00:01.462857 A 0.715288\n",
"3 00:00:12.921927 00:00:04.521547 E 0.444096\n",
"4 00:00:17.443474 00:00:02.966888 B 0.748427"
]
},
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>time</th>\n",
" <th>duration</th>\n",
" <th>value</th>\n",
" <th>confidence</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td> 00:00:00</td>\n",
" <td>00:00:02.612267</td>\n",
" <td> N</td>\n",
" <td> 0.001656</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>00:00:02.612267</td>\n",
" <td>00:00:08.846803</td>\n",
" <td> E</td>\n",
" <td> 0.148193</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>00:00:11.459070</td>\n",
" <td>00:00:01.462857</td>\n",
" <td> A</td>\n",
" <td> 0.715288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>00:00:12.921927</td>\n",
" <td>00:00:04.521547</td>\n",
" <td> E</td>\n",
" <td> 0.444096</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>00:00:17.443474</td>\n",
" <td>00:00:02.966888</td>\n",
" <td> B</td>\n",
" <td> 0.748427</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"metadata": {},
"output_type": "display_data",
"text": [
" time duration value confidence\n",
"0 00:00:00 00:00:02.612267 N 0.001656\n",
"1 00:00:02.612267 00:00:08.846803 E 0.148193\n",
"2 00:00:11.459070 00:00:01.462857 A 0.715288\n",
"3 00:00:12.921927 00:00:04.521547 E 0.444096\n",
"4 00:00:17.443474 00:00:02.966888 B 0.748427"
]
}
],
"prompt_number": 16
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import sys\n",
"sys.path.append('/home/bmcfee/git/jams/')\n",
"import pyjams"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 17
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"reload(pyjams.util)\n",
"reload(pyjams.pyjams)\n",
"reload(pyjams)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 18,
"text": [
"<module 'pyjams' from '/home/bmcfee/git/jams/pyjams/__init__.pyc'>"
]
}
],
"prompt_number": 18
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"annotation = pyjams.Annotation(data=json.loads(serialized), \n",
" namespace='chords.harte', \n",
" annotation_metadata=pyjams.AnnotationMetadata(data_source='pandas'))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 19
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"type(annotation.data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 20,
"text": [
"pyjams.pyjams.JamsFrame"
]
}
],
"prompt_number": 20
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"zip(annotation.data.time,\n",
" (annotation.data.duration + annotation.data.time), \n",
" annotation.data.values)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 21,
"text": [
"[(Timedelta('0 days 00:00:00'),\n",
" Timedelta('0 days 00:00:02.612267'),\n",
" array([Timedelta('0 days 00:00:00'), Timedelta('0 days 00:00:02.612267'),\n",
" u'N', 0.0016555704], dtype=object)),\n",
" (Timedelta('0 days 00:00:02.612267'),\n",
" Timedelta('0 days 00:00:11.459070'),\n",
" array([Timedelta('0 days 00:00:02.612267'),\n",
" Timedelta('0 days 00:00:08.846803'), u'E', 0.1481930711], dtype=object)),\n",
" (Timedelta('0 days 00:00:11.459070'),\n",
" Timedelta('0 days 00:00:12.921927'),\n",
" array([Timedelta('0 days 00:00:11.459070'),\n",
" Timedelta('0 days 00:00:01.462857'), u'A', 0.7152884202], dtype=object)),\n",
" (Timedelta('0 days 00:00:12.921927'),\n",
" Timedelta('0 days 00:00:17.443474'),\n",
" array([Timedelta('0 days 00:00:12.921927'),\n",
" Timedelta('0 days 00:00:04.521547'), u'E', 0.4440958265], dtype=object)),\n",
" (Timedelta('0 days 00:00:17.443474'),\n",
" Timedelta('0 days 00:00:20.410362'),\n",
" array([Timedelta('0 days 00:00:17.443474'),\n",
" Timedelta('0 days 00:00:02.966888'), u'B', 0.7484274408], dtype=object)),\n",
" (Timedelta('0 days 00:00:20.410362'),\n",
" Timedelta('0 days 00:00:21.908049'),\n",
" array([Timedelta('0 days 00:00:20.410362'),\n",
" Timedelta('0 days 00:00:01.497687'), u'E', 0.0909463754], dtype=object)),\n",
" (Timedelta('0 days 00:00:21.908049'),\n",
" Timedelta('0 days 00:00:23.370907'),\n",
" array([Timedelta('0 days 00:00:21.908049'),\n",
" Timedelta('0 days 00:00:01.462858'), u'E:7/3', 0.9334257111], dtype=object)),\n",
" (Timedelta('0 days 00:00:23.370907'),\n",
" Timedelta('0 days 00:00:24.856984'),\n",
" array([Timedelta('0 days 00:00:23.370907'),\n",
" Timedelta('0 days 00:00:01.486077'), u'A', 0.0053457204], dtype=object)),\n",
" (Timedelta('0 days 00:00:24.856984'),\n",
" Timedelta('0 days 00:00:26.343061'),\n",
" array([Timedelta('0 days 00:00:24.856984'),\n",
" Timedelta('0 days 00:00:01.486077'), u'A:min/b3', 0.7076910937], dtype=object)),\n",
" (Timedelta('0 days 00:00:26.343061'),\n",
" Timedelta('0 days 00:00:27.840748'),\n",
" array([Timedelta('0 days 00:00:26.343061'),\n",
" Timedelta('0 days 00:00:01.497687'), u'E', 0.8974621946], dtype=object)),\n",
" (Timedelta('0 days 00:00:27.840748'),\n",
" Timedelta('0 days 00:00:29.350045'),\n",
" array([Timedelta('0 days 00:00:27.840748'),\n",
" Timedelta('0 days 00:00:01.509297'), u'B', 0.1150061407], dtype=object)),\n",
" (Timedelta('0 days 00:00:29.350045'),\n",
" Timedelta('0 days 00:00:35.305963'),\n",
" array([Timedelta('0 days 00:00:29.350045'),\n",
" Timedelta('0 days 00:00:05.955918'), u'E', 0.1577606165], dtype=object)),\n",
" (Timedelta('0 days 00:00:35.305963'),\n",
" Timedelta('0 days 00:00:36.803650'),\n",
" array([Timedelta('0 days 00:00:35.305963'),\n",
" Timedelta('0 days 00:00:01.497687'), u'A', 0.8723349158], dtype=object)),\n",
" (Timedelta('0 days 00:00:36.803650'),\n",
" Timedelta('0 days 00:00:41.263102'),\n",
" array([Timedelta('0 days 00:00:36.803650'),\n",
" Timedelta('0 days 00:00:04.459452'), u'E', 0.8168685746], dtype=object)),\n",
" (Timedelta('0 days 00:00:41.263102'),\n",
" Timedelta('0 days 00:00:44.245646'),\n",
" array([Timedelta('0 days 00:00:41.263102'),\n",
" Timedelta('0 days 00:00:02.982544'), u'B', 0.2847267306], dtype=object)),\n",
" (Timedelta('0 days 00:00:44.245646'),\n",
" Timedelta('0 days 00:00:45.720113'),\n",
" array([Timedelta('0 days 00:00:44.245646'),\n",
" Timedelta('0 days 00:00:01.474467'), u'E', 0.7778873939], dtype=object)),\n",
" (Timedelta('0 days 00:00:45.720113'),\n",
" Timedelta('0 days 00:00:47.206190'),\n",
" array([Timedelta('0 days 00:00:45.720113'),\n",
" Timedelta('0 days 00:00:01.486077'), u'E:7/3', 0.8499654294], dtype=object)),\n",
" (Timedelta('0 days 00:00:47.206190'),\n",
" Timedelta('0 days 00:00:48.692267'),\n",
" array([Timedelta('0 days 00:00:47.206190'),\n",
" Timedelta('0 days 00:00:01.486077'), u'A', 0.4803819057], dtype=object)),\n",
" (Timedelta('0 days 00:00:48.692267'),\n",
" Timedelta('0 days 00:00:50.155124'),\n",
" array([Timedelta('0 days 00:00:48.692267'),\n",
" Timedelta('0 days 00:00:01.462857'), u'A:min/b3', 0.775080892], dtype=object)),\n",
" (Timedelta('0 days 00:00:50.155124'),\n",
" Timedelta('0 days 00:00:51.652811'),\n",
" array([Timedelta('0 days 00:00:50.155124'),\n",
" Timedelta('0 days 00:00:01.497687'), u'E', 0.2261745143], dtype=object)),\n",
" (Timedelta('0 days 00:00:51.652811'),\n",
" Timedelta('0 days 00:00:53.138888'),\n",
" array([Timedelta('0 days 00:00:51.652811'),\n",
" Timedelta('0 days 00:00:01.486077'), u'B', 0.4816940388], dtype=object)),\n",
" (Timedelta('0 days 00:00:53.138888'),\n",
" Timedelta('0 days 00:00:56.111043'),\n",
" array([Timedelta('0 days 00:00:53.138888'),\n",
" Timedelta('0 days 00:00:02.972155'), u'E', 0.7333201063], dtype=object)),\n",
" (Timedelta('0 days 00:00:56.111043'),\n",
" Timedelta('0 days 00:01:05.131995'),\n",
" array([Timedelta('0 days 00:00:56.111043'),\n",
" Timedelta('0 days 00:00:09.020952'), u'A', 0.6826780092], dtype=object)),\n",
" (Timedelta('0 days 00:01:05.131995'),\n",
" Timedelta('0 days 00:01:08.150589'),\n",
" array([Timedelta('0 days 00:01:05.131995'),\n",
" Timedelta('0 days 00:00:03.018594'), u'B', 0.6128813673], dtype=object)),\n",
" (Timedelta('0 days 00:01:08.150589'),\n",
" Timedelta('0 days 00:01:11.192403'),\n",
" array([Timedelta('0 days 00:01:08.150589'),\n",
" Timedelta('0 days 00:00:03.041814'), u'A', 0.3320838153], dtype=object)),\n",
" (Timedelta('0 days 00:01:11.192403'),\n",
" Timedelta('0 days 00:01:14.199387'),\n",
" array([Timedelta('0 days 00:01:11.192403'),\n",
" Timedelta('0 days 00:00:03.006984'), u'E', 0.6127230871], dtype=object)),\n",
" (Timedelta('0 days 00:01:14.199387'),\n",
" Timedelta('0 days 00:01:15.697074'),\n",
" array([Timedelta('0 days 00:01:14.199387'),\n",
" Timedelta('0 days 00:00:01.497687'), u'A', 0.4372041283], dtype=object)),\n",
" (Timedelta('0 days 00:01:15.697074'),\n",
" Timedelta('0 days 00:01:20.236575'),\n",
" array([Timedelta('0 days 00:01:15.697074'),\n",
" Timedelta('0 days 00:00:04.539501'), u'E', 0.6812526011], dtype=object)),\n",
" (Timedelta('0 days 00:01:20.236575'),\n",
" Timedelta('0 days 00:01:23.208730'),\n",
" array([Timedelta('0 days 00:01:20.236575'),\n",
" Timedelta('0 days 00:00:02.972155'), u'B', 0.3514895861], dtype=object)),\n",
" (Timedelta('0 days 00:01:23.208730'),\n",
" Timedelta('0 days 00:01:26.221693'),\n",
" array([Timedelta('0 days 00:01:23.208730'),\n",
" Timedelta('0 days 00:00:03.012963'), u'E', 0.8196448025], dtype=object)),\n",
" (Timedelta('0 days 00:01:26.221693'),\n",
" Timedelta('0 days 00:01:27.736621'),\n",
" array([Timedelta('0 days 00:01:26.221693'),\n",
" Timedelta('0 days 00:00:01.514928'), u'A', 0.2737022237], dtype=object)),\n",
" (Timedelta('0 days 00:01:27.736621'),\n",
" Timedelta('0 days 00:01:29.257528'),\n",
" array([Timedelta('0 days 00:01:27.736621'),\n",
" Timedelta('0 days 00:00:01.520907'), u'A:min/b3', 0.2865914929], dtype=object)),\n",
" (Timedelta('0 days 00:01:29.257527'),\n",
" Timedelta('0 days 00:01:30.720384'),\n",
" array([Timedelta('0 days 00:01:29.257527'),\n",
" Timedelta('0 days 00:00:01.462857'), u'E', 0.1464008483], dtype=object)),\n",
" (Timedelta('0 days 00:01:30.720385'),\n",
" Timedelta('0 days 00:01:32.157453'),\n",
" array([Timedelta('0 days 00:01:30.720385'),\n",
" Timedelta('0 days 00:00:01.437068'), u'B', 0.7304261983], dtype=object)),\n",
" (Timedelta('0 days 00:01:32.157453'),\n",
" Timedelta('0 days 00:01:44.106689'),\n",
" array([Timedelta('0 days 00:01:32.157453'),\n",
" Timedelta('0 days 00:00:11.949236'), u'E', 0.9590054213], dtype=object)),\n",
" (Timedelta('0 days 00:01:44.106689'),\n",
" Timedelta('0 days 00:01:47.125283'),\n",
" array([Timedelta('0 days 00:01:44.106689'),\n",
" Timedelta('0 days 00:00:03.018594'), u'B', 0.6913475376], dtype=object)),\n",
" (Timedelta('0 days 00:01:47.125283'),\n",
" Timedelta('0 days 00:01:50.178707'),\n",
" array([Timedelta('0 days 00:01:47.125283'),\n",
" Timedelta('0 days 00:00:03.053424'), u'E', 0.8359698631], dtype=object)),\n",
" (Timedelta('0 days 00:01:50.178707'),\n",
" Timedelta('0 days 00:01:53.124087'),\n",
" array([Timedelta('0 days 00:01:50.178707'),\n",
" Timedelta('0 days 00:00:02.945380'), u'A', 0.0895266106], dtype=object)),\n",
" (Timedelta('0 days 00:01:53.124087'),\n",
" Timedelta('0 days 00:01:54.613718'),\n",
" array([Timedelta('0 days 00:01:53.124087'),\n",
" Timedelta('0 days 00:00:01.489631'), u'E', 0.898507863], dtype=object)),\n",
" (Timedelta('0 days 00:01:54.613718'),\n",
" Timedelta('0 days 00:01:56.099795'),\n",
" array([Timedelta('0 days 00:01:54.613718'),\n",
" Timedelta('0 days 00:00:01.486077'), u'B', 0.5122189522], dtype=object)),\n",
" (Timedelta('0 days 00:01:56.099795'),\n",
" Timedelta('0 days 00:01:58.944961'),\n",
" array([Timedelta('0 days 00:01:56.099795'),\n",
" Timedelta('0 days 00:00:02.845166'), u'E', 0.8996954431], dtype=object)),\n",
" (Timedelta('0 days 00:01:58.944961'),\n",
" Timedelta('0 days 00:02:08.046462'),\n",
" array([Timedelta('0 days 00:01:58.944961'),\n",
" Timedelta('0 days 00:00:09.101501'), u'A', 0.3671989407], dtype=object)),\n",
" (Timedelta('0 days 00:02:08.046462'),\n",
" Timedelta('0 days 00:02:11.053446'),\n",
" array([Timedelta('0 days 00:02:08.046462'),\n",
" Timedelta('0 days 00:00:03.006984'), u'B', 0.1540542867], dtype=object)),\n",
" (Timedelta('0 days 00:02:11.053446'),\n",
" Timedelta('0 days 00:02:14.037210'),\n",
" array([Timedelta('0 days 00:02:11.053446'),\n",
" Timedelta('0 days 00:00:02.983764'), u'A', 0.9496073621], dtype=object)),\n",
" (Timedelta('0 days 00:02:14.037210'),\n",
" Timedelta('0 days 00:02:17.044195'),\n",
" array([Timedelta('0 days 00:02:14.037210'),\n",
" Timedelta('0 days 00:00:03.006985'), u'E', 0.1913085225], dtype=object)),\n",
" (Timedelta('0 days 00:02:17.044195'),\n",
" Timedelta('0 days 00:02:18.475524'),\n",
" array([Timedelta('0 days 00:02:17.044195'),\n",
" Timedelta('0 days 00:00:01.431329'), u'A', 0.2038309472], dtype=object)),\n",
" (Timedelta('0 days 00:02:18.475524'),\n",
" Timedelta('0 days 00:02:23.058163'),\n",
" array([Timedelta('0 days 00:02:18.475524'),\n",
" Timedelta('0 days 00:00:04.582639'), u'E', 0.3349097785], dtype=object)),\n",
" (Timedelta('0 days 00:02:23.058163'),\n",
" Timedelta('0 days 00:02:26.041927'),\n",
" array([Timedelta('0 days 00:02:23.058163'),\n",
" Timedelta('0 days 00:00:02.983764'), u'B', 0.9233487017], dtype=object)),\n",
" (Timedelta('0 days 00:02:26.041927'),\n",
" Timedelta('0 days 00:02:27.551224'),\n",
" array([Timedelta('0 days 00:02:26.041927'),\n",
" Timedelta('0 days 00:00:01.509297'), u'E', 0.4808236552], dtype=object)),\n",
" (Timedelta('0 days 00:02:27.551224'),\n",
" Timedelta('0 days 00:02:29.060521'),\n",
" array([Timedelta('0 days 00:02:27.551224'),\n",
" Timedelta('0 days 00:00:01.509297'), u'E:7/3', 0.6836674135], dtype=object)),\n",
" (Timedelta('0 days 00:02:29.060521'),\n",
" Timedelta('0 days 00:02:30.511768'),\n",
" array([Timedelta('0 days 00:02:29.060521'),\n",
" Timedelta('0 days 00:00:01.451247'), u'A', 0.3710762275], dtype=object)),\n",
" (Timedelta('0 days 00:02:30.511768'),\n",
" Timedelta('0 days 00:02:32.021065'),\n",
" array([Timedelta('0 days 00:02:30.511768'),\n",
" Timedelta('0 days 00:00:01.509297'), u'A:min/b3', 0.7588545367], dtype=object)),\n",
" (Timedelta('0 days 00:02:32.021065'),\n",
" Timedelta('0 days 00:02:33.530362'),\n",
" array([Timedelta('0 days 00:02:32.021065'),\n",
" Timedelta('0 days 00:00:01.509297'), u'E', 0.6836328811], dtype=object)),\n",
" (Timedelta('0 days 00:02:33.530362'),\n",
" Timedelta('0 days 00:02:35.062879'),\n",
" array([Timedelta('0 days 00:02:33.530362'),\n",
" Timedelta('0 days 00:00:01.532517'), u'B', 0.3539106656], dtype=object)),\n",
" (Timedelta('0 days 00:02:35.062879'),\n",
" Timedelta('0 days 00:02:39.532721'),\n",
" array([Timedelta('0 days 00:02:35.062879'),\n",
" Timedelta('0 days 00:00:04.469842'), u'E', 0.9364960036], dtype=object)),\n",
" (Timedelta('0 days 00:02:39.532721'),\n",
" Timedelta('0 days 00:02:41.065238'),\n",
" array([Timedelta('0 days 00:02:39.532721'),\n",
" Timedelta('0 days 00:00:01.532517'), u'B', 0.0886271144], dtype=object)),\n",
" (Timedelta('0 days 00:02:41.065238'),\n",
" Timedelta('0 days 00:02:45.581519'),\n",
" array([Timedelta('0 days 00:02:41.065238'),\n",
" Timedelta('0 days 00:00:04.516281'), u'E', 0.0330836142], dtype=object)),\n",
" (Timedelta('0 days 00:02:45.581519'),\n",
" Timedelta('0 days 00:02:47.114036'),\n",
" array([Timedelta('0 days 00:02:45.581519'),\n",
" Timedelta('0 days 00:00:01.532517'), u'B', 0.5403624591], dtype=object)),\n",
" (Timedelta('0 days 00:02:47.114036'),\n",
" Timedelta('0 days 00:02:48.646553'),\n",
" array([Timedelta('0 days 00:02:47.114036'),\n",
" Timedelta('0 days 00:00:01.532517'), u'A', 0.7587436091], dtype=object)),\n",
" (Timedelta('0 days 00:02:48.646553'),\n",
" Timedelta('0 days 00:02:49.737409'),\n",
" array([Timedelta('0 days 00:02:48.646553'),\n",
" Timedelta('0 days 00:00:01.090856'), u'E', 0.26434048], dtype=object)),\n",
" (Timedelta('0 days 00:02:49.737409'),\n",
" Timedelta('0 days 00:02:51.687173'),\n",
" array([Timedelta('0 days 00:02:49.737409'),\n",
" Timedelta('0 days 00:00:01.949764'), u'E:9', 0.3329688743], dtype=object)),\n",
" (Timedelta('0 days 00:02:51.687173'),\n",
" Timedelta('0 days 00:02:55.804082'),\n",
" array([Timedelta('0 days 00:02:51.687173'),\n",
" Timedelta('0 days 00:00:04.116909'), u'N', 0.8400907928], dtype=object))]"
]
}
],
"prompt_number": 21
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J = pyjams.JAMS(chord=[annotation])"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 22
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print J.dumps(indent=2)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"{\n",
" \"chord\": [\n",
" {\n",
" \"data\": [\n",
" {\n",
" \"duration\": 2.612267, \n",
" \"confidence\": 0.0016555704, \n",
" \"value\": \"N\", \n",
" \"time\": 0.0\n",
" }, \n",
" {\n",
" \"duration\": 8.846803, \n",
" \"confidence\": 0.1481930711, \n",
" \"value\": \"E\", \n",
" \"time\": 2.612267\n",
" }, \n",
" {\n",
" \"duration\": 1.462857, \n",
" \"confidence\": 0.7152884202, \n",
" \"value\": \"A\", \n",
" \"time\": 11.45907\n",
" }, \n",
" {\n",
" \"duration\": 4.521547, \n",
" \"confidence\": 0.4440958265, \n",
" \"value\": \"E\", \n",
" \"time\": 12.921927\n",
" }, \n",
" {\n",
" \"duration\": 2.966888, \n",
" \"confidence\": 0.7484274408, \n",
" \"value\": \"B\", \n",
" \"time\": 17.443474\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.0909463754, \n",
" \"value\": \"E\", \n",
" \"time\": 20.410362\n",
" }, \n",
" {\n",
" \"duration\": 1.462858, \n",
" \"confidence\": 0.9334257111, \n",
" \"value\": \"E:7/3\", \n",
" \"time\": 21.908049\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.0053457204, \n",
" \"value\": \"A\", \n",
" \"time\": 23.370907\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.7076910937, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 24.856984\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.8974621946, \n",
" \"value\": \"E\", \n",
" \"time\": 26.343061\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.1150061407, \n",
" \"value\": \"B\", \n",
" \"time\": 27.840748\n",
" }, \n",
" {\n",
" \"duration\": 5.955918, \n",
" \"confidence\": 0.1577606165, \n",
" \"value\": \"E\", \n",
" \"time\": 29.350045\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.8723349158, \n",
" \"value\": \"A\", \n",
" \"time\": 35.305963\n",
" }, \n",
" {\n",
" \"duration\": 4.459452, \n",
" \"confidence\": 0.8168685746, \n",
" \"value\": \"E\", \n",
" \"time\": 36.80365\n",
" }, \n",
" {\n",
" \"duration\": 2.982544, \n",
" \"confidence\": 0.2847267306, \n",
" \"value\": \"B\", \n",
" \"time\": 41.263102\n",
" }, \n",
" {\n",
" \"duration\": 1.474467, \n",
" \"confidence\": 0.7778873939, \n",
" \"value\": \"E\", \n",
" \"time\": 44.245646\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.8499654294, \n",
" \"value\": \"E:7/3\", \n",
" \"time\": 45.720113\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.4803819057, \n",
" \"value\": \"A\", \n",
" \"time\": 47.20619\n",
" }, \n",
" {\n",
" \"duration\": 1.462857, \n",
" \"confidence\": 0.775080892, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 48.692267\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.2261745143, \n",
" \"value\": \"E\", \n",
" \"time\": 50.155124\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.4816940388, \n",
" \"value\": \"B\", \n",
" \"time\": 51.652811\n",
" }, \n",
" {\n",
" \"duration\": 2.972155, \n",
" \"confidence\": 0.7333201063, \n",
" \"value\": \"E\", \n",
" \"time\": 53.138888\n",
" }, \n",
" {\n",
" \"duration\": 9.020952, \n",
" \"confidence\": 0.6826780092, \n",
" \"value\": \"A\", \n",
" \"time\": 56.111043\n",
" }, \n",
" {\n",
" \"duration\": 3.018594, \n",
" \"confidence\": 0.6128813673, \n",
" \"value\": \"B\", \n",
" \"time\": 65.131995\n",
" }, \n",
" {\n",
" \"duration\": 3.041814, \n",
" \"confidence\": 0.3320838153, \n",
" \"value\": \"A\", \n",
" \"time\": 68.150589\n",
" }, \n",
" {\n",
" \"duration\": 3.006984, \n",
" \"confidence\": 0.6127230871, \n",
" \"value\": \"E\", \n",
" \"time\": 71.192403\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.4372041283, \n",
" \"value\": \"A\", \n",
" \"time\": 74.199387\n",
" }, \n",
" {\n",
" \"duration\": 4.539501, \n",
" \"confidence\": 0.6812526011, \n",
" \"value\": \"E\", \n",
" \"time\": 75.697074\n",
" }, \n",
" {\n",
" \"duration\": 2.972155, \n",
" \"confidence\": 0.3514895861, \n",
" \"value\": \"B\", \n",
" \"time\": 80.236575\n",
" }, \n",
" {\n",
" \"duration\": 3.012963, \n",
" \"confidence\": 0.8196448025, \n",
" \"value\": \"E\", \n",
" \"time\": 83.20873\n",
" }, \n",
" {\n",
" \"duration\": 1.514928, \n",
" \"confidence\": 0.2737022237, \n",
" \"value\": \"A\", \n",
" \"time\": 86.221693\n",
" }, \n",
" {\n",
" \"duration\": 1.520907, \n",
" \"confidence\": 0.2865914929, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 87.736621\n",
" }, \n",
" {\n",
" \"duration\": 1.462857, \n",
" \"confidence\": 0.1464008483, \n",
" \"value\": \"E\", \n",
" \"time\": 89.257527\n",
" }, \n",
" {\n",
" \"duration\": 1.437068, \n",
" \"confidence\": 0.7304261983, \n",
" \"value\": \"B\", \n",
" \"time\": 90.720385\n",
" }, \n",
" {\n",
" \"duration\": 11.949236, \n",
" \"confidence\": 0.9590054213, \n",
" \"value\": \"E\", \n",
" \"time\": 92.157453\n",
" }, \n",
" {\n",
" \"duration\": 3.018594, \n",
" \"confidence\": 0.6913475376, \n",
" \"value\": \"B\", \n",
" \"time\": 104.106689\n",
" }, \n",
" {\n",
" \"duration\": 3.053424, \n",
" \"confidence\": 0.8359698631, \n",
" \"value\": \"E\", \n",
" \"time\": 107.125283\n",
" }, \n",
" {\n",
" \"duration\": 2.94538, \n",
" \"confidence\": 0.0895266106, \n",
" \"value\": \"A\", \n",
" \"time\": 110.178707\n",
" }, \n",
" {\n",
" \"duration\": 1.489631, \n",
" \"confidence\": 0.898507863, \n",
" \"value\": \"E\", \n",
" \"time\": 113.124087\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.5122189522, \n",
" \"value\": \"B\", \n",
" \"time\": 114.613718\n",
" }, \n",
" {\n",
" \"duration\": 2.845166, \n",
" \"confidence\": 0.8996954431, \n",
" \"value\": \"E\", \n",
" \"time\": 116.099795\n",
" }, \n",
" {\n",
" \"duration\": 9.101501, \n",
" \"confidence\": 0.3671989407, \n",
" \"value\": \"A\", \n",
" \"time\": 118.944961\n",
" }, \n",
" {\n",
" \"duration\": 3.006984, \n",
" \"confidence\": 0.1540542867, \n",
" \"value\": \"B\", \n",
" \"time\": 128.046462\n",
" }, \n",
" {\n",
" \"duration\": 2.983764, \n",
" \"confidence\": 0.9496073621, \n",
" \"value\": \"A\", \n",
" \"time\": 131.053446\n",
" }, \n",
" {\n",
" \"duration\": 3.006985, \n",
" \"confidence\": 0.1913085225, \n",
" \"value\": \"E\", \n",
" \"time\": 134.03721\n",
" }, \n",
" {\n",
" \"duration\": 1.431329, \n",
" \"confidence\": 0.2038309472, \n",
" \"value\": \"A\", \n",
" \"time\": 137.044195\n",
" }, \n",
" {\n",
" \"duration\": 4.582639, \n",
" \"confidence\": 0.3349097785, \n",
" \"value\": \"E\", \n",
" \"time\": 138.475524\n",
" }, \n",
" {\n",
" \"duration\": 2.983764, \n",
" \"confidence\": 0.9233487017, \n",
" \"value\": \"B\", \n",
" \"time\": 143.058163\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.4808236552, \n",
" \"value\": \"E\", \n",
" \"time\": 146.041927\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.6836674135, \n",
" \"value\": \"E:7/3\", \n",
" \"time\": 147.551224\n",
" }, \n",
" {\n",
" \"duration\": 1.451247, \n",
" \"confidence\": 0.3710762275, \n",
" \"value\": \"A\", \n",
" \"time\": 149.060521\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.7588545367, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 150.511768\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.6836328811, \n",
" \"value\": \"E\", \n",
" \"time\": 152.021065\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.3539106656, \n",
" \"value\": \"B\", \n",
" \"time\": 153.530362\n",
" }, \n",
" {\n",
" \"duration\": 4.469842, \n",
" \"confidence\": 0.9364960036, \n",
" \"value\": \"E\", \n",
" \"time\": 155.062879\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.0886271144, \n",
" \"value\": \"B\", \n",
" \"time\": 159.532721\n",
" }, \n",
" {\n",
" \"duration\": 4.516281, \n",
" \"confidence\": 0.0330836142, \n",
" \"value\": \"E\", \n",
" \"time\": 161.065238\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.5403624591, \n",
" \"value\": \"B\", \n",
" \"time\": 165.581519\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.7587436091, \n",
" \"value\": \"A\", \n",
" \"time\": 167.114036\n",
" }, \n",
" {\n",
" \"duration\": 1.090856, \n",
" \"confidence\": 0.26434048, \n",
" \"value\": \"E\", \n",
" \"time\": 168.646553\n",
" }, \n",
" {\n",
" \"duration\": 1.949764, \n",
" \"confidence\": 0.3329688743, \n",
" \"value\": \"E:9\", \n",
" \"time\": 169.737409\n",
" }, \n",
" {\n",
" \"duration\": 4.116909, \n",
" \"confidence\": 0.8400907928, \n",
" \"value\": \"N\", \n",
" \"time\": 171.687173\n",
" }\n",
" ], \n",
" \"annotation_metadata\": {\n",
" \"data_source\": \"pandas\"\n",
" }, \n",
" \"namespace\": \"chords.harte\"\n",
" }\n",
" ], \n",
" \"file_metadata\": {\n",
" \"jams_version\": \"0.0.1\"\n",
" }\n",
"}\n"
]
}
],
"prompt_number": 55
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J.chord[0].__json__"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 24,
"text": [
"{'annotation_metadata': <AnnotationMetadata: annotation_rules, curator, annotator, version, corpus, annotation_tools, validation, data_source>,\n",
" 'data': time duration value confidence\n",
" 0 00:00:00 00:00:02.612267 N 0.001656\n",
" 1 00:00:02.612267 00:00:08.846803 E 0.148193\n",
" 2 00:00:11.459070 00:00:01.462857 A 0.715288\n",
" 3 00:00:12.921927 00:00:04.521547 E 0.444096\n",
" 4 00:00:17.443474 00:00:02.966888 B 0.748427\n",
" 5 00:00:20.410362 00:00:01.497687 E 0.090946\n",
" 6 00:00:21.908049 00:00:01.462858 E:7/3 0.933426\n",
" 7 00:00:23.370907 00:00:01.486077 A 0.005346\n",
" 8 00:00:24.856984 00:00:01.486077 A:min/b3 0.707691\n",
" 9 00:00:26.343061 00:00:01.497687 E 0.897462\n",
" 10 00:00:27.840748 00:00:01.509297 B 0.115006\n",
" 11 00:00:29.350045 00:00:05.955918 E 0.157761\n",
" 12 00:00:35.305963 00:00:01.497687 A 0.872335\n",
" 13 00:00:36.803650 00:00:04.459452 E 0.816869\n",
" 14 00:00:41.263102 00:00:02.982544 B 0.284727\n",
" 15 00:00:44.245646 00:00:01.474467 E 0.777887\n",
" 16 00:00:45.720113 00:00:01.486077 E:7/3 0.849965\n",
" 17 00:00:47.206190 00:00:01.486077 A 0.480382\n",
" 18 00:00:48.692267 00:00:01.462857 A:min/b3 0.775081\n",
" 19 00:00:50.155124 00:00:01.497687 E 0.226175\n",
" 20 00:00:51.652811 00:00:01.486077 B 0.481694\n",
" 21 00:00:53.138888 00:00:02.972155 E 0.733320\n",
" 22 00:00:56.111043 00:00:09.020952 A 0.682678\n",
" 23 00:01:05.131995 00:00:03.018594 B 0.612881\n",
" 24 00:01:08.150589 00:00:03.041814 A 0.332084\n",
" 25 00:01:11.192403 00:00:03.006984 E 0.612723\n",
" 26 00:01:14.199387 00:00:01.497687 A 0.437204\n",
" 27 00:01:15.697074 00:00:04.539501 E 0.681253\n",
" 28 00:01:20.236575 00:00:02.972155 B 0.351490\n",
" 29 00:01:23.208730 00:00:03.012963 E 0.819645\n",
" .. ... ... ... ...\n",
" 32 00:01:29.257527 00:00:01.462857 E 0.146401\n",
" 33 00:01:30.720385 00:00:01.437068 B 0.730426\n",
" 34 00:01:32.157453 00:00:11.949236 E 0.959005\n",
" 35 00:01:44.106689 00:00:03.018594 B 0.691348\n",
" 36 00:01:47.125283 00:00:03.053424 E 0.835970\n",
" 37 00:01:50.178707 00:00:02.945380 A 0.089527\n",
" 38 00:01:53.124087 00:00:01.489631 E 0.898508\n",
" 39 00:01:54.613718 00:00:01.486077 B 0.512219\n",
" 40 00:01:56.099795 00:00:02.845166 E 0.899695\n",
" 41 00:01:58.944961 00:00:09.101501 A 0.367199\n",
" 42 00:02:08.046462 00:00:03.006984 B 0.154054\n",
" 43 00:02:11.053446 00:00:02.983764 A 0.949607\n",
" 44 00:02:14.037210 00:00:03.006985 E 0.191309\n",
" 45 00:02:17.044195 00:00:01.431329 A 0.203831\n",
" 46 00:02:18.475524 00:00:04.582639 E 0.334910\n",
" 47 00:02:23.058163 00:00:02.983764 B 0.923349\n",
" 48 00:02:26.041927 00:00:01.509297 E 0.480824\n",
" 49 00:02:27.551224 00:00:01.509297 E:7/3 0.683667\n",
" 50 00:02:29.060521 00:00:01.451247 A 0.371076\n",
" 51 00:02:30.511768 00:00:01.509297 A:min/b3 0.758855\n",
" 52 00:02:32.021065 00:00:01.509297 E 0.683633\n",
" 53 00:02:33.530362 00:00:01.532517 B 0.353911\n",
" 54 00:02:35.062879 00:00:04.469842 E 0.936496\n",
" 55 00:02:39.532721 00:00:01.532517 B 0.088627\n",
" 56 00:02:41.065238 00:00:04.516281 E 0.033084\n",
" 57 00:02:45.581519 00:00:01.532517 B 0.540362\n",
" 58 00:02:47.114036 00:00:01.532517 A 0.758744\n",
" 59 00:02:48.646553 00:00:01.090856 E 0.264340\n",
" 60 00:02:49.737409 00:00:01.949764 E:9 0.332969\n",
" 61 00:02:51.687173 00:00:04.116909 N 0.840091\n",
" \n",
" [62 rows x 4 columns],\n",
" 'namespace': 'chords.harte'}"
]
}
],
"prompt_number": 24
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"annotation.data.to_dict(orient='records')"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 25,
"text": [
"[{u'confidence': 0.0016555704,\n",
" u'duration': Timedelta('0 days 00:00:02.612267'),\n",
" u'time': Timedelta('0 days 00:00:00'),\n",
" u'value': u'N'},\n",
" {u'confidence': 0.1481930711,\n",
" u'duration': Timedelta('0 days 00:00:08.846803'),\n",
" u'time': Timedelta('0 days 00:00:02.612267'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.7152884202,\n",
" u'duration': Timedelta('0 days 00:00:01.462857'),\n",
" u'time': Timedelta('0 days 00:00:11.459070'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.4440958265,\n",
" u'duration': Timedelta('0 days 00:00:04.521547'),\n",
" u'time': Timedelta('0 days 00:00:12.921927'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.7484274408,\n",
" u'duration': Timedelta('0 days 00:00:02.966888'),\n",
" u'time': Timedelta('0 days 00:00:17.443474'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.0909463754,\n",
" u'duration': Timedelta('0 days 00:00:01.497687'),\n",
" u'time': Timedelta('0 days 00:00:20.410362'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.9334257111,\n",
" u'duration': Timedelta('0 days 00:00:01.462858'),\n",
" u'time': Timedelta('0 days 00:00:21.908049'),\n",
" u'value': u'E:7/3'},\n",
" {u'confidence': 0.0053457204,\n",
" u'duration': Timedelta('0 days 00:00:01.486077'),\n",
" u'time': Timedelta('0 days 00:00:23.370907'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.7076910937,\n",
" u'duration': Timedelta('0 days 00:00:01.486077'),\n",
" u'time': Timedelta('0 days 00:00:24.856984'),\n",
" u'value': u'A:min/b3'},\n",
" {u'confidence': 0.8974621946,\n",
" u'duration': Timedelta('0 days 00:00:01.497687'),\n",
" u'time': Timedelta('0 days 00:00:26.343061'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.1150061407,\n",
" u'duration': Timedelta('0 days 00:00:01.509297'),\n",
" u'time': Timedelta('0 days 00:00:27.840748'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.1577606165,\n",
" u'duration': Timedelta('0 days 00:00:05.955918'),\n",
" u'time': Timedelta('0 days 00:00:29.350045'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.8723349158,\n",
" u'duration': Timedelta('0 days 00:00:01.497687'),\n",
" u'time': Timedelta('0 days 00:00:35.305963'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.8168685746,\n",
" u'duration': Timedelta('0 days 00:00:04.459452'),\n",
" u'time': Timedelta('0 days 00:00:36.803650'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.2847267306,\n",
" u'duration': Timedelta('0 days 00:00:02.982544'),\n",
" u'time': Timedelta('0 days 00:00:41.263102'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.7778873939,\n",
" u'duration': Timedelta('0 days 00:00:01.474467'),\n",
" u'time': Timedelta('0 days 00:00:44.245646'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.8499654294,\n",
" u'duration': Timedelta('0 days 00:00:01.486077'),\n",
" u'time': Timedelta('0 days 00:00:45.720113'),\n",
" u'value': u'E:7/3'},\n",
" {u'confidence': 0.4803819057,\n",
" u'duration': Timedelta('0 days 00:00:01.486077'),\n",
" u'time': Timedelta('0 days 00:00:47.206190'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.775080892,\n",
" u'duration': Timedelta('0 days 00:00:01.462857'),\n",
" u'time': Timedelta('0 days 00:00:48.692267'),\n",
" u'value': u'A:min/b3'},\n",
" {u'confidence': 0.2261745143,\n",
" u'duration': Timedelta('0 days 00:00:01.497687'),\n",
" u'time': Timedelta('0 days 00:00:50.155124'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.4816940388,\n",
" u'duration': Timedelta('0 days 00:00:01.486077'),\n",
" u'time': Timedelta('0 days 00:00:51.652811'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.7333201063,\n",
" u'duration': Timedelta('0 days 00:00:02.972155'),\n",
" u'time': Timedelta('0 days 00:00:53.138888'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.6826780092,\n",
" u'duration': Timedelta('0 days 00:00:09.020952'),\n",
" u'time': Timedelta('0 days 00:00:56.111043'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.6128813673,\n",
" u'duration': Timedelta('0 days 00:00:03.018594'),\n",
" u'time': Timedelta('0 days 00:01:05.131995'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.3320838153,\n",
" u'duration': Timedelta('0 days 00:00:03.041814'),\n",
" u'time': Timedelta('0 days 00:01:08.150589'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.6127230871,\n",
" u'duration': Timedelta('0 days 00:00:03.006984'),\n",
" u'time': Timedelta('0 days 00:01:11.192403'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.4372041283,\n",
" u'duration': Timedelta('0 days 00:00:01.497687'),\n",
" u'time': Timedelta('0 days 00:01:14.199387'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.6812526011,\n",
" u'duration': Timedelta('0 days 00:00:04.539501'),\n",
" u'time': Timedelta('0 days 00:01:15.697074'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.3514895861,\n",
" u'duration': Timedelta('0 days 00:00:02.972155'),\n",
" u'time': Timedelta('0 days 00:01:20.236575'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.8196448025,\n",
" u'duration': Timedelta('0 days 00:00:03.012963'),\n",
" u'time': Timedelta('0 days 00:01:23.208730'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.2737022237,\n",
" u'duration': Timedelta('0 days 00:00:01.514928'),\n",
" u'time': Timedelta('0 days 00:01:26.221693'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.2865914929,\n",
" u'duration': Timedelta('0 days 00:00:01.520907'),\n",
" u'time': Timedelta('0 days 00:01:27.736621'),\n",
" u'value': u'A:min/b3'},\n",
" {u'confidence': 0.1464008483,\n",
" u'duration': Timedelta('0 days 00:00:01.462857'),\n",
" u'time': Timedelta('0 days 00:01:29.257527'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.7304261983,\n",
" u'duration': Timedelta('0 days 00:00:01.437068'),\n",
" u'time': Timedelta('0 days 00:01:30.720385'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.9590054213,\n",
" u'duration': Timedelta('0 days 00:00:11.949236'),\n",
" u'time': Timedelta('0 days 00:01:32.157453'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.6913475376,\n",
" u'duration': Timedelta('0 days 00:00:03.018594'),\n",
" u'time': Timedelta('0 days 00:01:44.106689'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.8359698631,\n",
" u'duration': Timedelta('0 days 00:00:03.053424'),\n",
" u'time': Timedelta('0 days 00:01:47.125283'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.0895266106,\n",
" u'duration': Timedelta('0 days 00:00:02.945380'),\n",
" u'time': Timedelta('0 days 00:01:50.178707'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.898507863,\n",
" u'duration': Timedelta('0 days 00:00:01.489631'),\n",
" u'time': Timedelta('0 days 00:01:53.124087'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.5122189522,\n",
" u'duration': Timedelta('0 days 00:00:01.486077'),\n",
" u'time': Timedelta('0 days 00:01:54.613718'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.8996954431,\n",
" u'duration': Timedelta('0 days 00:00:02.845166'),\n",
" u'time': Timedelta('0 days 00:01:56.099795'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.3671989407,\n",
" u'duration': Timedelta('0 days 00:00:09.101501'),\n",
" u'time': Timedelta('0 days 00:01:58.944961'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.1540542867,\n",
" u'duration': Timedelta('0 days 00:00:03.006984'),\n",
" u'time': Timedelta('0 days 00:02:08.046462'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.9496073621,\n",
" u'duration': Timedelta('0 days 00:00:02.983764'),\n",
" u'time': Timedelta('0 days 00:02:11.053446'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.1913085225,\n",
" u'duration': Timedelta('0 days 00:00:03.006985'),\n",
" u'time': Timedelta('0 days 00:02:14.037210'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.2038309472,\n",
" u'duration': Timedelta('0 days 00:00:01.431329'),\n",
" u'time': Timedelta('0 days 00:02:17.044195'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.3349097785,\n",
" u'duration': Timedelta('0 days 00:00:04.582639'),\n",
" u'time': Timedelta('0 days 00:02:18.475524'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.9233487017,\n",
" u'duration': Timedelta('0 days 00:00:02.983764'),\n",
" u'time': Timedelta('0 days 00:02:23.058163'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.4808236552,\n",
" u'duration': Timedelta('0 days 00:00:01.509297'),\n",
" u'time': Timedelta('0 days 00:02:26.041927'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.6836674135,\n",
" u'duration': Timedelta('0 days 00:00:01.509297'),\n",
" u'time': Timedelta('0 days 00:02:27.551224'),\n",
" u'value': u'E:7/3'},\n",
" {u'confidence': 0.3710762275,\n",
" u'duration': Timedelta('0 days 00:00:01.451247'),\n",
" u'time': Timedelta('0 days 00:02:29.060521'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.7588545367,\n",
" u'duration': Timedelta('0 days 00:00:01.509297'),\n",
" u'time': Timedelta('0 days 00:02:30.511768'),\n",
" u'value': u'A:min/b3'},\n",
" {u'confidence': 0.6836328811,\n",
" u'duration': Timedelta('0 days 00:00:01.509297'),\n",
" u'time': Timedelta('0 days 00:02:32.021065'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.3539106656,\n",
" u'duration': Timedelta('0 days 00:00:01.532517'),\n",
" u'time': Timedelta('0 days 00:02:33.530362'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.9364960036,\n",
" u'duration': Timedelta('0 days 00:00:04.469842'),\n",
" u'time': Timedelta('0 days 00:02:35.062879'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.0886271144,\n",
" u'duration': Timedelta('0 days 00:00:01.532517'),\n",
" u'time': Timedelta('0 days 00:02:39.532721'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.0330836142,\n",
" u'duration': Timedelta('0 days 00:00:04.516281'),\n",
" u'time': Timedelta('0 days 00:02:41.065238'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.5403624591,\n",
" u'duration': Timedelta('0 days 00:00:01.532517'),\n",
" u'time': Timedelta('0 days 00:02:45.581519'),\n",
" u'value': u'B'},\n",
" {u'confidence': 0.7587436091,\n",
" u'duration': Timedelta('0 days 00:00:01.532517'),\n",
" u'time': Timedelta('0 days 00:02:47.114036'),\n",
" u'value': u'A'},\n",
" {u'confidence': 0.26434048,\n",
" u'duration': Timedelta('0 days 00:00:01.090856'),\n",
" u'time': Timedelta('0 days 00:02:48.646553'),\n",
" u'value': u'E'},\n",
" {u'confidence': 0.3329688743,\n",
" u'duration': Timedelta('0 days 00:00:01.949764'),\n",
" u'time': Timedelta('0 days 00:02:49.737409'),\n",
" u'value': u'E:9'},\n",
" {u'confidence': 0.8400907928,\n",
" u'duration': Timedelta('0 days 00:00:04.116909'),\n",
" u'time': Timedelta('0 days 00:02:51.687173'),\n",
" u'value': u'N'}]"
]
}
],
"prompt_number": 25
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J.chord[0].data[:10]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>time</th>\n",
" <th>duration</th>\n",
" <th>value</th>\n",
" <th>confidence</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td> 00:00:00</td>\n",
" <td>00:00:02.612267</td>\n",
" <td> N</td>\n",
" <td> 0.001656</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>00:00:02.612267</td>\n",
" <td>00:00:08.846803</td>\n",
" <td> E</td>\n",
" <td> 0.148193</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>00:00:11.459070</td>\n",
" <td>00:00:01.462857</td>\n",
" <td> A</td>\n",
" <td> 0.715288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>00:00:12.921927</td>\n",
" <td>00:00:04.521547</td>\n",
" <td> E</td>\n",
" <td> 0.444096</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>00:00:17.443474</td>\n",
" <td>00:00:02.966888</td>\n",
" <td> B</td>\n",
" <td> 0.748427</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>00:00:20.410362</td>\n",
" <td>00:00:01.497687</td>\n",
" <td> E</td>\n",
" <td> 0.090946</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>00:00:21.908049</td>\n",
" <td>00:00:01.462858</td>\n",
" <td> E:7/3</td>\n",
" <td> 0.933426</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>00:00:23.370907</td>\n",
" <td>00:00:01.486077</td>\n",
" <td> A</td>\n",
" <td> 0.005346</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>00:00:24.856984</td>\n",
" <td>00:00:01.486077</td>\n",
" <td> A:min/b3</td>\n",
" <td> 0.707691</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>00:00:26.343061</td>\n",
" <td>00:00:01.497687</td>\n",
" <td> E</td>\n",
" <td> 0.897462</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 26,
"text": [
" time duration value confidence\n",
"0 00:00:00 00:00:02.612267 N 0.001656\n",
"1 00:00:02.612267 00:00:08.846803 E 0.148193\n",
"2 00:00:11.459070 00:00:01.462857 A 0.715288\n",
"3 00:00:12.921927 00:00:04.521547 E 0.444096\n",
"4 00:00:17.443474 00:00:02.966888 B 0.748427\n",
"5 00:00:20.410362 00:00:01.497687 E 0.090946\n",
"6 00:00:21.908049 00:00:01.462858 E:7/3 0.933426\n",
"7 00:00:23.370907 00:00:01.486077 A 0.005346\n",
"8 00:00:24.856984 00:00:01.486077 A:min/b3 0.707691\n",
"9 00:00:26.343061 00:00:01.497687 E 0.897462"
]
}
],
"prompt_number": 26
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J.chord[0].annotation_metadata.data_source"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 28,
"text": [
"'pandas'"
]
}
],
"prompt_number": 28
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 29,
"text": [
"<JAMS: onset, chord, mood, beat, pattern, file_metadata, note, source, sandbox, tag, key, pitch, genre, melody, segment>"
]
}
],
"prompt_number": 29
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print json.dumps(J, indent=2)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"{\n",
" \"chord\": [\n",
" {\n",
" \"data\": [\n",
" {\n",
" \"duration\": 2.612267, \n",
" \"confidence\": 0.0016555704, \n",
" \"value\": \"N\", \n",
" \"time\": 0.0\n",
" }, \n",
" {\n",
" \"duration\": 8.846803, \n",
" \"confidence\": 0.1481930711, \n",
" \"value\": \"E\", \n",
" \"time\": 2.612267\n",
" }, \n",
" {\n",
" \"duration\": 1.462857, \n",
" \"confidence\": 0.7152884202, \n",
" \"value\": \"A\", \n",
" \"time\": 11.45907\n",
" }, \n",
" {\n",
" \"duration\": 4.521547, \n",
" \"confidence\": 0.4440958265, \n",
" \"value\": \"E\", \n",
" \"time\": 12.921927\n",
" }, \n",
" {\n",
" \"duration\": 2.966888, \n",
" \"confidence\": 0.7484274408, \n",
" \"value\": \"B\", \n",
" \"time\": 17.443474\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.0909463754, \n",
" \"value\": \"E\", \n",
" \"time\": 20.410362\n",
" }, \n",
" {\n",
" \"duration\": 1.462858, \n",
" \"confidence\": 0.9334257111, \n",
" \"value\": \"E:7/3\", \n",
" \"time\": 21.908049\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.0053457204, \n",
" \"value\": \"A\", \n",
" \"time\": 23.370907\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.7076910937, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 24.856984\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.8974621946, \n",
" \"value\": \"E\", \n",
" \"time\": 26.343061\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.1150061407, \n",
" \"value\": \"B\", \n",
" \"time\": 27.840748\n",
" }, \n",
" {\n",
" \"duration\": 5.955918, \n",
" \"confidence\": 0.1577606165, \n",
" \"value\": \"E\", \n",
" \"time\": 29.350045\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.8723349158, \n",
" \"value\": \"A\", \n",
" \"time\": 35.305963\n",
" }, \n",
" {\n",
" \"duration\": 4.459452, \n",
" \"confidence\": 0.8168685746, \n",
" \"value\": \"E\", \n",
" \"time\": 36.80365\n",
" }, \n",
" {\n",
" \"duration\": 2.982544, \n",
" \"confidence\": 0.2847267306, \n",
" \"value\": \"B\", \n",
" \"time\": 41.263102\n",
" }, \n",
" {\n",
" \"duration\": 1.474467, \n",
" \"confidence\": 0.7778873939, \n",
" \"value\": \"E\", \n",
" \"time\": 44.245646\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.8499654294, \n",
" \"value\": \"E:7/3\", \n",
" \"time\": 45.720113\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.4803819057, \n",
" \"value\": \"A\", \n",
" \"time\": 47.20619\n",
" }, \n",
" {\n",
" \"duration\": 1.462857, \n",
" \"confidence\": 0.775080892, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 48.692267\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.2261745143, \n",
" \"value\": \"E\", \n",
" \"time\": 50.155124\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.4816940388, \n",
" \"value\": \"B\", \n",
" \"time\": 51.652811\n",
" }, \n",
" {\n",
" \"duration\": 2.972155, \n",
" \"confidence\": 0.7333201063, \n",
" \"value\": \"E\", \n",
" \"time\": 53.138888\n",
" }, \n",
" {\n",
" \"duration\": 9.020952, \n",
" \"confidence\": 0.6826780092, \n",
" \"value\": \"A\", \n",
" \"time\": 56.111043\n",
" }, \n",
" {\n",
" \"duration\": 3.018594, \n",
" \"confidence\": 0.6128813673, \n",
" \"value\": \"B\", \n",
" \"time\": 65.131995\n",
" }, \n",
" {\n",
" \"duration\": 3.041814, \n",
" \"confidence\": 0.3320838153, \n",
" \"value\": \"A\", \n",
" \"time\": 68.150589\n",
" }, \n",
" {\n",
" \"duration\": 3.006984, \n",
" \"confidence\": 0.6127230871, \n",
" \"value\": \"E\", \n",
" \"time\": 71.192403\n",
" }, \n",
" {\n",
" \"duration\": 1.497687, \n",
" \"confidence\": 0.4372041283, \n",
" \"value\": \"A\", \n",
" \"time\": 74.199387\n",
" }, \n",
" {\n",
" \"duration\": 4.539501, \n",
" \"confidence\": 0.6812526011, \n",
" \"value\": \"E\", \n",
" \"time\": 75.697074\n",
" }, \n",
" {\n",
" \"duration\": 2.972155, \n",
" \"confidence\": 0.3514895861, \n",
" \"value\": \"B\", \n",
" \"time\": 80.236575\n",
" }, \n",
" {\n",
" \"duration\": 3.012963, \n",
" \"confidence\": 0.8196448025, \n",
" \"value\": \"E\", \n",
" \"time\": 83.20873\n",
" }, \n",
" {\n",
" \"duration\": 1.514928, \n",
" \"confidence\": 0.2737022237, \n",
" \"value\": \"A\", \n",
" \"time\": 86.221693\n",
" }, \n",
" {\n",
" \"duration\": 1.520907, \n",
" \"confidence\": 0.2865914929, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 87.736621\n",
" }, \n",
" {\n",
" \"duration\": 1.462857, \n",
" \"confidence\": 0.1464008483, \n",
" \"value\": \"E\", \n",
" \"time\": 89.257527\n",
" }, \n",
" {\n",
" \"duration\": 1.437068, \n",
" \"confidence\": 0.7304261983, \n",
" \"value\": \"B\", \n",
" \"time\": 90.720385\n",
" }, \n",
" {\n",
" \"duration\": 11.949236, \n",
" \"confidence\": 0.9590054213, \n",
" \"value\": \"E\", \n",
" \"time\": 92.157453\n",
" }, \n",
" {\n",
" \"duration\": 3.018594, \n",
" \"confidence\": 0.6913475376, \n",
" \"value\": \"B\", \n",
" \"time\": 104.106689\n",
" }, \n",
" {\n",
" \"duration\": 3.053424, \n",
" \"confidence\": 0.8359698631, \n",
" \"value\": \"E\", \n",
" \"time\": 107.125283\n",
" }, \n",
" {\n",
" \"duration\": 2.94538, \n",
" \"confidence\": 0.0895266106, \n",
" \"value\": \"A\", \n",
" \"time\": 110.178707\n",
" }, \n",
" {\n",
" \"duration\": 1.489631, \n",
" \"confidence\": 0.898507863, \n",
" \"value\": \"E\", \n",
" \"time\": 113.124087\n",
" }, \n",
" {\n",
" \"duration\": 1.486077, \n",
" \"confidence\": 0.5122189522, \n",
" \"value\": \"B\", \n",
" \"time\": 114.613718\n",
" }, \n",
" {\n",
" \"duration\": 2.845166, \n",
" \"confidence\": 0.8996954431, \n",
" \"value\": \"E\", \n",
" \"time\": 116.099795\n",
" }, \n",
" {\n",
" \"duration\": 9.101501, \n",
" \"confidence\": 0.3671989407, \n",
" \"value\": \"A\", \n",
" \"time\": 118.944961\n",
" }, \n",
" {\n",
" \"duration\": 3.006984, \n",
" \"confidence\": 0.1540542867, \n",
" \"value\": \"B\", \n",
" \"time\": 128.046462\n",
" }, \n",
" {\n",
" \"duration\": 2.983764, \n",
" \"confidence\": 0.9496073621, \n",
" \"value\": \"A\", \n",
" \"time\": 131.053446\n",
" }, \n",
" {\n",
" \"duration\": 3.006985, \n",
" \"confidence\": 0.1913085225, \n",
" \"value\": \"E\", \n",
" \"time\": 134.03721\n",
" }, \n",
" {\n",
" \"duration\": 1.431329, \n",
" \"confidence\": 0.2038309472, \n",
" \"value\": \"A\", \n",
" \"time\": 137.044195\n",
" }, \n",
" {\n",
" \"duration\": 4.582639, \n",
" \"confidence\": 0.3349097785, \n",
" \"value\": \"E\", \n",
" \"time\": 138.475524\n",
" }, \n",
" {\n",
" \"duration\": 2.983764, \n",
" \"confidence\": 0.9233487017, \n",
" \"value\": \"B\", \n",
" \"time\": 143.058163\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.4808236552, \n",
" \"value\": \"E\", \n",
" \"time\": 146.041927\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.6836674135, \n",
" \"value\": \"E:7/3\", \n",
" \"time\": 147.551224\n",
" }, \n",
" {\n",
" \"duration\": 1.451247, \n",
" \"confidence\": 0.3710762275, \n",
" \"value\": \"A\", \n",
" \"time\": 149.060521\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.7588545367, \n",
" \"value\": \"A:min/b3\", \n",
" \"time\": 150.511768\n",
" }, \n",
" {\n",
" \"duration\": 1.509297, \n",
" \"confidence\": 0.6836328811, \n",
" \"value\": \"E\", \n",
" \"time\": 152.021065\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.3539106656, \n",
" \"value\": \"B\", \n",
" \"time\": 153.530362\n",
" }, \n",
" {\n",
" \"duration\": 4.469842, \n",
" \"confidence\": 0.9364960036, \n",
" \"value\": \"E\", \n",
" \"time\": 155.062879\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.0886271144, \n",
" \"value\": \"B\", \n",
" \"time\": 159.532721\n",
" }, \n",
" {\n",
" \"duration\": 4.516281, \n",
" \"confidence\": 0.0330836142, \n",
" \"value\": \"E\", \n",
" \"time\": 161.065238\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.5403624591, \n",
" \"value\": \"B\", \n",
" \"time\": 165.581519\n",
" }, \n",
" {\n",
" \"duration\": 1.532517, \n",
" \"confidence\": 0.7587436091, \n",
" \"value\": \"A\", \n",
" \"time\": 167.114036\n",
" }, \n",
" {\n",
" \"duration\": 1.090856, \n",
" \"confidence\": 0.26434048, \n",
" \"value\": \"E\", \n",
" \"time\": 168.646553\n",
" }, \n",
" {\n",
" \"duration\": 1.949764, \n",
" \"confidence\": 0.3329688743, \n",
" \"value\": \"E:9\", \n",
" \"time\": 169.737409\n",
" }, \n",
" {\n",
" \"duration\": 4.116909, \n",
" \"confidence\": 0.8400907928, \n",
" \"value\": \"N\", \n",
" \"time\": 171.687173\n",
" }\n",
" ], \n",
" \"annotation_metadata\": {\n",
" \"data_source\": \"pandas\"\n",
" }, \n",
" \"namespace\": \"chords.harte\"\n",
" }\n",
" ], \n",
" \"file_metadata\": {\n",
" \"jams_version\": \"0.0.1\"\n",
" }\n",
"}\n"
]
}
],
"prompt_number": 54
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J2 = pyjams.JAMS(**json.loads(J.dumps()))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 34
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"type(J2.chord[0].data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 35,
"text": [
"pyjams.pyjams.JamsFrame"
]
}
],
"prompt_number": 35
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J2.chord[0].data[:5]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>time</th>\n",
" <th>duration</th>\n",
" <th>value</th>\n",
" <th>confidence</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td> 00:00:00</td>\n",
" <td>00:00:02.612267</td>\n",
" <td> N</td>\n",
" <td> 0.001656</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>00:00:02.612267</td>\n",
" <td>00:00:08.846803</td>\n",
" <td> E</td>\n",
" <td> 0.148193</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>00:00:11.459070</td>\n",
" <td>00:00:01.462857</td>\n",
" <td> A</td>\n",
" <td> 0.715288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>00:00:12.921927</td>\n",
" <td>00:00:04.521547</td>\n",
" <td> E</td>\n",
" <td> 0.444096</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>00:00:17.443474</td>\n",
" <td>00:00:02.966888</td>\n",
" <td> B</td>\n",
" <td> 0.748427</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 36,
"text": [
" time duration value confidence\n",
"0 00:00:00 00:00:02.612267 N 0.001656\n",
"1 00:00:02.612267 00:00:08.846803 E 0.148193\n",
"2 00:00:11.459070 00:00:01.462857 A 0.715288\n",
"3 00:00:12.921927 00:00:04.521547 E 0.444096\n",
"4 00:00:17.443474 00:00:02.966888 B 0.748427"
]
}
],
"prompt_number": 36
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"J.chord[0].data[:5]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>time</th>\n",
" <th>duration</th>\n",
" <th>value</th>\n",
" <th>confidence</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td> 00:00:00</td>\n",
" <td>00:00:02.612267</td>\n",
" <td> N</td>\n",
" <td> 0.001656</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>00:00:02.612267</td>\n",
" <td>00:00:08.846803</td>\n",
" <td> E</td>\n",
" <td> 0.148193</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>00:00:11.459070</td>\n",
" <td>00:00:01.462857</td>\n",
" <td> A</td>\n",
" <td> 0.715288</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>00:00:12.921927</td>\n",
" <td>00:00:04.521547</td>\n",
" <td> E</td>\n",
" <td> 0.444096</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>00:00:17.443474</td>\n",
" <td>00:00:02.966888</td>\n",
" <td> B</td>\n",
" <td> 0.748427</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 37,
"text": [
" time duration value confidence\n",
"0 00:00:00 00:00:02.612267 N 0.001656\n",
"1 00:00:02.612267 00:00:08.846803 E 0.148193\n",
"2 00:00:11.459070 00:00:01.462857 A 0.715288\n",
"3 00:00:12.921927 00:00:04.521547 E 0.444096\n",
"4 00:00:17.443474 00:00:02.966888 B 0.748427"
]
}
],
"prompt_number": 37
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# What about viewing in mir_eval-friendly style?\n",
"\n",
"intervals, labels = J.chord[0].data.to_interval_values()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 51
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"intervals[:5]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 52,
"text": [
"array([[ 0. , 2.612],\n",
" [ 2.612, 11.459],\n",
" [ 11.459, 12.922],\n",
" [ 12.922, 17.443],\n",
" [ 17.443, 20.41 ]])"
]
}
],
"prompt_number": 52
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"labels[:5]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 53,
"text": [
"[u'N', u'E', u'A', u'E', u'B']"
]
}
],
"prompt_number": 53
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment