{ "metadata": { "name": "", "signature": "sha256:d64e2eb2383f6ac9c46fd19bb6123b3f7b2884f0507f8690f838b91a379ce9f6" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "This takes in a file with notes (here, generated by oscar2.py) and uses the n-gram model to generate notes." ] }, { "cell_type": "code", "collapsed": false, "input": [ "from collections import Counter, defaultdict\n", "from itertools import izip_longest\n", "from sklearn.cluster import KMeans\n", "from sklearn.preprocessing import normalize\n", "from itertools import groupby\n", "import pandas as pd\n", "import copy\n", "import numpy as np\n", "import sys\n", "sys.path.append('C:/Python27/Lib/site-packages')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "# Import and order the original notes.\n", "oscar2 = pd.read_csv('oscar2notes.txt', skiprows=2)[:].sort(\"Offset\")\n", "oscar2.index = xrange(1, len(oscar2) + 1)\n", "oscar2 = oscar2[oscar2.Octave >= 4] # threshold >= octave 4 for melodies\n", "with open('oscar2notes.txt', 'rb') as f:\n", " metmark = float(f.readline())\n", " tsig_num, tsig_den = [i for i in f.readline().replace(' /', '').split()]\n", " \n", "print \"Metrics:\" \n", "print metmark, tsig_num, tsig_den, len(oscar2) # len shorter if octave cutoff, also if [:200] in .read_csv\n", "oscar2.head(20)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Metrics:\n", "176.0 4 4 1078\n" ] }, { "html": [ "
\n", " | Note/Rest | \n", "Octave | \n", "Len | \n", "Offset | \n", "
---|---|---|---|---|
2 | \n", "D | \n", "5 | \n", "0.750000 | \n", "12.666667 | \n", "
3 | \n", "E | \n", "4 | \n", "0.666667 | \n", "14.000000 | \n", "
4 | \n", "C# | \n", "5 | \n", "0.875000 | \n", "14.000000 | \n", "
5 | \n", "A | \n", "5 | \n", "0.250000 | \n", "15.000000 | \n", "
6 | \n", "F | \n", "4 | \n", "3.125000 | \n", "16.000000 | \n", "
7 | \n", "D | \n", "5 | \n", "0.250000 | \n", "16.000000 | \n", "
8 | \n", "A | \n", "4 | \n", "3.125000 | \n", "16.000000 | \n", "
9 | \n", "F | \n", "5 | \n", "1.333333 | \n", "16.000000 | \n", "
10 | \n", "D | \n", "5 | \n", "3.000000 | \n", "16.375000 | \n", "
11 | \n", "F | \n", "5 | \n", "1.750000 | \n", "17.625000 | \n", "
12 | \n", "G | \n", "4 | \n", "0.666667 | \n", "20.625000 | \n", "
13 | \n", "B- | \n", "4 | \n", "0.250000 | \n", "20.666667 | \n", "
14 | \n", "E- | \n", "4 | \n", "0.625000 | \n", "22.000000 | \n", "
15 | \n", "A | \n", "4 | \n", "0.125000 | \n", "22.000000 | \n", "
17 | \n", "G | \n", "4 | \n", "0.375000 | \n", "22.000000 | \n", "
18 | \n", "B- | \n", "5 | \n", "0.875000 | \n", "23.875000 | \n", "
19 | \n", "F | \n", "4 | \n", "1.250000 | \n", "23.875000 | \n", "
20 | \n", "B- | \n", "5 | \n", "1.250000 | \n", "25.500000 | \n", "
21 | \n", "D | \n", "6 | \n", "0.750000 | \n", "28.625000 | \n", "
22 | \n", "B | \n", "5 | \n", "1.375000 | \n", "28.625000 | \n", "
20 rows \u00d7 4 columns
\n", "