I realized I made a mistake in the design of the Gendy GK module: the module is based on the premise that all arguments to a synth are real valued. The Gendy parameters ampdist and durdist are categorical variables and as such violate the assumption.


In [1]:
import sys
sys.path.append('/Users/spacecoffin/Development')

import GravelKicker as gk
import librosa
import numpy as np
import os
import pandas as pd

from datetime import datetime
from supriya.tools import nonrealtimetools

In [2]:
this_dir = '/Users/spacecoffin/Development/GravelKicker/__gen_files'

In [6]:
pmtx = gk.generator.gendy1.gen_params(rows=100)

In [7]:
df = gk.generator.gendy1.format_params(pmtx)

In [73]:
df.to_pickle()


Out[73]:
adparam ampscale ddparam durscale ampdist durdist knum minfrequency maxfrequency init_cps hash
0 0.140567 0.296349 0.694119 0.870140 5.0 5.0 12.0 27.500000 123.470825 16.0 bffb8f3b4b4cb178cb74ec7943c7eb44
1 0.976231 0.277556 0.617027 0.173149 5.0 5.0 11.0 16.351598 25.956544 16.0 ca190a8ae0e5c4beb7d8e6b38bfbf1e0
2 0.639036 0.779432 0.954356 0.248040 5.0 0.0 14.0 220.000000 932.327523 16.0 7683a96287dbca2c7a7f870a293c459a
3 0.856778 0.615598 0.114462 0.865524 2.0 2.0 10.0 415.304698 1975.533205 16.0 4745a743ac821963e58c2aa039d87647
4 0.717413 0.886676 0.446664 0.429450 0.0 5.0 14.0 10.300861 34.647829 16.0 7b0b9271b3717641f77e707512cbce6b
5 0.726739 0.447664 0.455060 0.594067 3.0 4.0 11.0 25.956544 277.182631 16.0 c5bd8e39442f83b56f2cdf371bac4dcc
6 0.315652 0.150260 0.696117 0.245300 5.0 1.0 12.0 58.270470 220.000000 16.0 c44badc8e9e959796573b5ab746207e9
7 0.012038 0.055573 0.436362 0.435634 2.0 3.0 13.0 233.081881 293.664768 16.0 a395dfbc10e3c95ef5b2b476dabe4291
8 0.434207 0.600596 0.144068 0.845757 0.0 2.0 11.0 61.735413 73.416192 16.0 475b09a4257f6f72ccc8bbd999e5bf97
9 0.314423 0.720786 0.898457 0.501920 0.0 5.0 12.0 46.249303 87.307058 16.0 d6eba37b4e5b9c45f8fa0e57e52d925d
10 0.149213 0.803590 0.506268 0.221940 3.0 5.0 14.0 14.567618 27.500000 16.0 2951fd9b5a76328b27f75feb84c63397
11 0.941576 0.793607 0.884417 0.507369 5.0 4.0 13.0 92.498606 587.329536 16.0 9a3a90d01ef5d5322fe768e04d66c291
12 0.847062 0.948210 0.166209 0.483142 2.0 3.0 9.0 233.081881 391.995436 16.0 85f21a559d08acf0d6b0760d9b65b4c0
13 0.774483 0.515727 0.191346 0.067267 3.0 1.0 13.0 24.499715 82.406889 16.0 f10c90377d5ae11ce4c38e398a5cdc09
14 0.387323 0.828988 0.305139 0.462204 1.0 2.0 13.0 41.203445 311.126984 16.0 2c0bd3f2742a34e9cfdb567082cbad4a
15 0.264970 0.146887 0.802805 0.599800 5.0 3.0 14.0 184.997211 554.365262 16.0 ca3b4c649f3d657da8a1de6c234d538c
16 0.398866 0.772135 0.224419 0.436501 4.0 3.0 12.0 220.000000 1567.981744 16.0 ea524ef020271fa6572fccaba4196a74
17 0.374543 0.151519 0.104026 0.385049 2.0 1.0 15.0 311.126984 1567.981744 16.0 d83814cf8b284700f3f8c0605001c4d8
18 0.406214 0.523283 0.637029 0.515608 4.0 0.0 12.0 103.826174 123.470825 16.0 8eda513dc4b14111ce82b8227b585c6a
19 0.025347 0.748021 0.571764 0.818625 3.0 1.0 10.0 233.081881 369.994423 16.0 22080531ee67adb3cc6c0ecf3dd0de2b
20 0.630945 0.341776 0.907955 0.846463 1.0 1.0 13.0 554.365262 783.990872 16.0 dde1914258e216d2a18e4570dc9dcf4b
21 0.549380 0.549365 0.514414 0.067968 4.0 3.0 11.0 29.135235 466.163762 16.0 56c44a92179bac1efef143ffebf55d75
22 0.624507 0.970800 0.115833 0.084680 1.0 4.0 9.0 10.300861 21.826764 16.0 a3296cf59751fa190ec522c6f87be33c
23 0.619147 0.702963 0.704624 0.846077 1.0 2.0 12.0 391.995436 415.304698 16.0 5e85cdf07830af641cc2ec47d952fafc
24 0.441448 0.929197 0.923300 0.362459 4.0 0.0 12.0 9.177024 36.708096 16.0 60c155ef9e92536d40fbc7f7b7157864
25 0.049221 0.096192 0.506798 0.949034 5.0 1.0 13.0 184.997211 246.941651 16.0 50ca88648059b1d4694978e165dcaf3f
26 0.868060 0.107455 0.031129 0.227593 2.0 0.0 13.0 466.163762 739.988845 16.0 00863d513033675d19b28640fd0d395f
27 0.438835 0.668790 0.221935 0.199449 5.0 5.0 12.0 38.890873 61.735413 16.0 6c52b9816e7b197e86dacfeef5ec8411
28 0.544936 0.117482 0.435654 0.900235 2.0 0.0 10.0 30.867706 2793.825851 16.0 94f4ac6db9370e674e5a9a895f2452be
29 0.395026 0.683075 0.127904 0.695616 3.0 1.0 11.0 61.735413 369.994423 16.0 d33d878df94648823c074a6dd23b3eb5
... ... ... ... ... ... ... ... ... ... ... ...
70 0.633824 0.100791 0.886926 0.569303 3.0 3.0 10.0 195.997718 207.652349 16.0 134d83ae08471458100e2b29d92b4641
71 0.483271 0.043196 0.889111 0.030375 5.0 1.0 11.0 61.735413 87.307058 16.0 d52e1bd1aa27cf25b8aef8872d2ed51a
72 0.487946 0.690625 0.478157 0.042380 1.0 4.0 8.0 43.653529 184.997211 16.0 e9b73567a5a5671a8eb044e60fd33a90
73 0.041706 0.854476 0.204663 0.241624 1.0 3.0 9.0 1108.730524 2093.004522 16.0 9c1883ecedb173ef8c7ee4a829c09a41
74 0.593181 0.204258 0.625244 0.102961 1.0 5.0 12.0 311.126984 2217.461048 16.0 fc6585b0e0b3571c8769ba7b7346ccbf
75 0.775826 0.284496 0.859170 0.631275 2.0 2.0 11.0 9.177024 10.913382 16.0 67e3d72503af4c732a564037deb4fa5c
76 0.108605 0.609662 0.596985 0.349631 2.0 4.0 12.0 130.812783 246.941651 16.0 d9c9fdced4def3bd9a76a1481badf29d
77 0.120932 0.681908 0.921700 0.167986 3.0 0.0 12.0 8.175799 4186.009045 16.0 0fb3d4bc4af8cb28f9b4f37345ea3dd8
78 0.943481 0.172716 0.731616 0.235319 5.0 3.0 8.0 164.813778 329.627557 16.0 49397f5d04dc31a874ee579451095f91
79 0.336802 0.893346 0.556808 0.423930 4.0 0.0 8.0 38.890873 3951.066410 16.0 7f2d453125256b5939108f3999d9b5b1
80 0.332562 0.432787 0.198116 0.004707 2.0 4.0 13.0 220.000000 3951.066410 16.0 d2256c5075e82c838e0e0b586b627caf
81 0.774138 0.324171 0.095434 0.680617 5.0 5.0 12.0 1108.730524 3951.066410 16.0 8eb6744d5196cd79fdb1ab0d0ae9e469
82 0.200390 0.480073 0.203515 0.801010 1.0 0.0 14.0 466.163762 622.253967 16.0 b16591eb1f7da5e8268f6ed167b2f195
83 0.388212 0.723324 0.908967 0.115439 5.0 2.0 11.0 65.406391 87.307058 16.0 22cd678b90d3743a8c6e87d7c5b5468c
84 0.020576 0.584655 0.636087 0.277855 2.0 3.0 11.0 195.997718 293.664768 16.0 1df28e5560ce0d633abdb0e099bd5d8e
85 0.492623 0.989929 0.976492 0.008921 2.0 1.0 14.0 587.329536 1864.655046 16.0 4764193186d0d93fb800d1d77b7cc9bb
86 0.759948 0.059714 0.033785 0.830425 4.0 0.0 12.0 97.998859 130.812783 16.0 54280d7e4b6824cbf515051646306315
87 0.233052 0.395877 0.780626 0.612113 0.0 4.0 12.0 38.890873 123.470825 16.0 bfaa65bfaa7747e6e21e863a2cd8364e
88 0.625776 0.173321 0.732628 0.232759 0.0 5.0 13.0 329.627557 783.990872 16.0 6f5dff1745e9ea02efd2f130dbcfcfcc
89 0.613349 0.470304 0.207821 0.158491 2.0 1.0 14.0 207.652349 246.941651 16.0 500c593134a3c56e70db47280b710693
90 0.588139 0.902430 0.652230 0.562310 0.0 5.0 11.0 1661.218790 3951.066410 16.0 c97ce82fd509c146e035bf63ac69ce37
91 0.232791 0.267941 0.800947 0.251281 4.0 3.0 13.0 38.890873 77.781746 16.0 0b236efc6c5b8a31c9c7c92feb94321e
92 0.068025 0.064293 0.086288 0.911258 0.0 2.0 11.0 97.998859 1864.655046 16.0 fa53d986b206f52b5b07ae47dbef2723
93 0.463363 0.789818 0.607833 0.110046 3.0 3.0 12.0 8.661957 13.750000 16.0 fd36521a7917cfbcb51946a31ef81347
94 0.044057 0.291824 0.094686 0.832175 4.0 1.0 11.0 1174.659072 1864.655046 16.0 910e1b3c69e42698e5c591ae94ef28fd
95 0.459862 0.349461 0.907124 0.839088 5.0 4.0 13.0 8.175799 65.406391 16.0 3609610b897255f366b3ac0f44cf1b3e
96 0.592219 0.465846 0.950628 0.814859 5.0 5.0 12.0 16.351598 82.406889 16.0 07a7a83f48846d4624d736efdebc2b85
97 0.301785 0.953625 0.682601 0.126688 2.0 5.0 11.0 61.735413 523.251131 16.0 36b984e6f2dc3b89fa810ce28de4d18f
98 0.387658 0.406595 0.797436 0.941026 0.0 0.0 9.0 116.540940 220.000000 16.0 904a6b2fb54c1cb1c218cc859e6092fc
99 0.817273 0.740969 0.804849 0.691434 3.0 2.0 10.0 34.647829 123.470825 16.0 d68fc0c924526c94a151671a261ac705

100 rows × 11 columns


In [30]:
pmtx


Out[30]:
array([[  1.40566725e-01,   2.96348706e-01,   6.94119437e-01,
          8.70139674e-01,   5.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   2.75000000e+01,   1.23470825e+02,
          1.60000000e+01],
       [  9.76231054e-01,   2.77556017e-01,   6.17027301e-01,
          1.73149196e-01,   5.00000000e+00,   5.00000000e+00,
          1.10000000e+01,   1.63515978e+01,   2.59565436e+01,
          1.60000000e+01],
       [  6.39036413e-01,   7.79432295e-01,   9.54356368e-01,
          2.48040346e-01,   5.00000000e+00,   0.00000000e+00,
          1.40000000e+01,   2.20000000e+02,   9.32327523e+02,
          1.60000000e+01],
       [  8.56777788e-01,   6.15597540e-01,   1.14462311e-01,
          8.65524238e-01,   2.00000000e+00,   2.00000000e+00,
          1.00000000e+01,   4.15304698e+02,   1.97553321e+03,
          1.60000000e+01],
       [  7.17413492e-01,   8.86676141e-01,   4.46664321e-01,
          4.29449566e-01,   0.00000000e+00,   5.00000000e+00,
          1.40000000e+01,   1.03008612e+01,   3.46478289e+01,
          1.60000000e+01],
       [  7.26738693e-01,   4.47663964e-01,   4.55059651e-01,
          5.94066943e-01,   3.00000000e+00,   4.00000000e+00,
          1.10000000e+01,   2.59565436e+01,   2.77182631e+02,
          1.60000000e+01],
       [  3.15652363e-01,   1.50259658e-01,   6.96117114e-01,
          2.45300437e-01,   5.00000000e+00,   1.00000000e+00,
          1.20000000e+01,   5.82704702e+01,   2.20000000e+02,
          1.60000000e+01],
       [  1.20383750e-02,   5.55734758e-02,   4.36362136e-01,
          4.35634401e-01,   2.00000000e+00,   3.00000000e+00,
          1.30000000e+01,   2.33081881e+02,   2.93664768e+02,
          1.60000000e+01],
       [  4.34207031e-01,   6.00596427e-01,   1.44068068e-01,
          8.45757042e-01,   0.00000000e+00,   2.00000000e+00,
          1.10000000e+01,   6.17354127e+01,   7.34161920e+01,
          1.60000000e+01],
       [  3.14422876e-01,   7.20785614e-01,   8.98456932e-01,
          5.01920043e-01,   0.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   4.62493028e+01,   8.73070579e+01,
          1.60000000e+01],
       [  1.49212671e-01,   8.03590202e-01,   5.06268250e-01,
          2.21940402e-01,   3.00000000e+00,   5.00000000e+00,
          1.40000000e+01,   1.45676175e+01,   2.75000000e+01,
          1.60000000e+01],
       [  9.41576313e-01,   7.93607339e-01,   8.84416819e-01,
          5.07369355e-01,   5.00000000e+00,   4.00000000e+00,
          1.30000000e+01,   9.24986057e+01,   5.87329536e+02,
          1.60000000e+01],
       [  8.47061557e-01,   9.48209825e-01,   1.66209055e-01,
          4.83142358e-01,   2.00000000e+00,   3.00000000e+00,
          9.00000000e+00,   2.33081881e+02,   3.91995436e+02,
          1.60000000e+01],
       [  7.74482971e-01,   5.15726527e-01,   1.91346006e-01,
          6.72673587e-02,   3.00000000e+00,   1.00000000e+00,
          1.30000000e+01,   2.44997147e+01,   8.24068892e+01,
          1.60000000e+01],
       [  3.87323079e-01,   8.28987787e-01,   3.05138847e-01,
          4.62203530e-01,   1.00000000e+00,   2.00000000e+00,
          1.30000000e+01,   4.12034446e+01,   3.11126984e+02,
          1.60000000e+01],
       [  2.64969927e-01,   1.46886565e-01,   8.02804672e-01,
          5.99799814e-01,   5.00000000e+00,   3.00000000e+00,
          1.40000000e+01,   1.84997211e+02,   5.54365262e+02,
          1.60000000e+01],
       [  3.98865707e-01,   7.72134750e-01,   2.24418877e-01,
          4.36500907e-01,   4.00000000e+00,   3.00000000e+00,
          1.20000000e+01,   2.20000000e+02,   1.56798174e+03,
          1.60000000e+01],
       [  3.74542711e-01,   1.51518953e-01,   1.04026171e-01,
          3.85049362e-01,   2.00000000e+00,   1.00000000e+00,
          1.50000000e+01,   3.11126984e+02,   1.56798174e+03,
          1.60000000e+01],
       [  4.06214381e-01,   5.23283246e-01,   6.37029038e-01,
          5.15607815e-01,   4.00000000e+00,   0.00000000e+00,
          1.20000000e+01,   1.03826174e+02,   1.23470825e+02,
          1.60000000e+01],
       [  2.53474277e-02,   7.48021172e-01,   5.71764387e-01,
          8.18624821e-01,   3.00000000e+00,   1.00000000e+00,
          1.00000000e+01,   2.33081881e+02,   3.69994423e+02,
          1.60000000e+01],
       [  6.30944762e-01,   3.41775929e-01,   9.07954901e-01,
          8.46462698e-01,   1.00000000e+00,   1.00000000e+00,
          1.30000000e+01,   5.54365262e+02,   7.83990872e+02,
          1.60000000e+01],
       [  5.49380016e-01,   5.49365418e-01,   5.14414410e-01,
          6.79679725e-02,   4.00000000e+00,   3.00000000e+00,
          1.10000000e+01,   2.91352351e+01,   4.66163762e+02,
          1.60000000e+01],
       [  6.24506891e-01,   9.70799762e-01,   1.15832663e-01,
          8.46796122e-02,   1.00000000e+00,   4.00000000e+00,
          9.00000000e+00,   1.03008612e+01,   2.18267645e+01,
          1.60000000e+01],
       [  6.19146520e-01,   7.02963089e-01,   7.04623715e-01,
          8.46076739e-01,   1.00000000e+00,   2.00000000e+00,
          1.20000000e+01,   3.91995436e+02,   4.15304698e+02,
          1.60000000e+01],
       [  4.41448269e-01,   9.29196994e-01,   9.23300195e-01,
          3.62458668e-01,   4.00000000e+00,   0.00000000e+00,
          1.20000000e+01,   9.17702400e+00,   3.67080960e+01,
          1.60000000e+01],
       [  4.92206884e-02,   9.61916363e-02,   5.06798484e-01,
          9.49034410e-01,   5.00000000e+00,   1.00000000e+00,
          1.30000000e+01,   1.84997211e+02,   2.46941651e+02,
          1.60000000e+01],
       [  8.68059877e-01,   1.07454922e-01,   3.11292816e-02,
          2.27593498e-01,   2.00000000e+00,   0.00000000e+00,
          1.30000000e+01,   4.66163762e+02,   7.39988845e+02,
          1.60000000e+01],
       [  4.38835281e-01,   6.68790457e-01,   2.21934772e-01,
          1.99449462e-01,   5.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   3.88908730e+01,   6.17354127e+01,
          1.60000000e+01],
       [  5.44935871e-01,   1.17482472e-01,   4.35653652e-01,
          9.00235117e-01,   2.00000000e+00,   0.00000000e+00,
          1.00000000e+01,   3.08677063e+01,   2.79382585e+03,
          1.60000000e+01],
       [  3.95026275e-01,   6.83074667e-01,   1.27903847e-01,
          6.95616148e-01,   3.00000000e+00,   1.00000000e+00,
          1.10000000e+01,   6.17354127e+01,   3.69994423e+02,
          1.60000000e+01],
       [  3.43855395e-01,   7.99278448e-01,   1.31273567e-01,
          2.13649375e-01,   4.00000000e+00,   4.00000000e+00,
          1.20000000e+01,   3.91995436e+02,   7.39988845e+02,
          1.60000000e+01],
       [  6.60814016e-01,   4.66262544e-01,   8.11170039e-01,
          8.29434882e-01,   0.00000000e+00,   2.00000000e+00,
          1.40000000e+01,   2.61625565e+02,   3.11126984e+02,
          1.60000000e+01],
       [  9.76757669e-01,   4.37239896e-01,   3.33418054e-01,
          7.90673838e-01,   0.00000000e+00,   2.00000000e+00,
          9.00000000e+00,   1.15623257e+01,   2.18267645e+01,
          1.60000000e+01],
       [  3.46096712e-01,   6.65650199e-03,   8.66110898e-02,
          9.70710505e-01,   3.00000000e+00,   3.00000000e+00,
          1.30000000e+01,   1.74614116e+02,   2.46941651e+02,
          1.60000000e+01],
       [  9.01814461e-02,   2.05660623e-01,   5.37871528e-01,
          7.43020144e-02,   5.00000000e+00,   3.00000000e+00,
          1.40000000e+01,   5.19130872e+01,   1.16540940e+02,
          1.60000000e+01],
       [  6.96076211e-01,   4.14700477e-01,   2.43478701e-01,
          5.35827853e-01,   5.00000000e+00,   1.00000000e+00,
          1.20000000e+01,   2.44997147e+01,   1.30812783e+02,
          1.60000000e+01],
       [  4.97783418e-01,   1.15200605e-01,   6.38931637e-01,
          4.46775202e-01,   5.00000000e+00,   5.00000000e+00,
          1.00000000e+01,   1.83540480e+01,   3.67080960e+01,
          1.60000000e+01],
       [  9.16018992e-01,   3.72392766e-01,   4.64937396e-01,
          3.73454475e-01,   1.00000000e+00,   1.00000000e+00,
          1.10000000e+01,   1.66121879e+03,   2.21746105e+03,
          1.60000000e+01],
       [  3.59384110e-01,   2.31281577e-01,   9.80787092e-01,
          6.06335052e-01,   3.00000000e+00,   2.00000000e+00,
          1.40000000e+01,   1.74614116e+02,   5.54365262e+02,
          1.60000000e+01],
       [  7.01058769e-01,   8.78345353e-02,   5.30614298e-01,
          8.06027846e-01,   3.00000000e+00,   0.00000000e+00,
          1.00000000e+01,   2.77182631e+02,   4.93883301e+02,
          1.60000000e+01],
       [  8.46154512e-01,   1.87416702e-01,   2.22742871e-01,
          2.55321866e-01,   2.00000000e+00,   2.00000000e+00,
          1.20000000e+01,   7.77817459e+01,   1.23470825e+02,
          1.60000000e+01],
       [  2.44638450e-01,   4.89615141e-03,   1.44001771e-01,
          3.93863621e-01,   5.00000000e+00,   0.00000000e+00,
          1.20000000e+01,   4.93883301e+02,   5.87329536e+02,
          1.60000000e+01],
       [  2.64003613e-01,   9.77735276e-01,   7.19114612e-01,
          9.01769181e-01,   4.00000000e+00,   2.00000000e+00,
          1.20000000e+01,   1.22498574e+01,   6.92956577e+01,
          1.60000000e+01],
       [  9.76232131e-01,   4.73980819e-01,   8.56676586e-01,
          1.85855418e-02,   4.00000000e+00,   3.00000000e+00,
          1.10000000e+01,   3.08677063e+01,   6.22253967e+02,
          1.60000000e+01],
       [  6.96363877e-01,   9.01892568e-01,   8.74152129e-02,
          1.40171550e-01,   1.00000000e+00,   3.00000000e+00,
          1.30000000e+01,   8.30609395e+02,   1.39691293e+03,
          1.60000000e+01],
       [  2.44547789e-02,   6.95094086e-01,   6.19703209e-01,
          4.80139384e-01,   1.00000000e+00,   3.00000000e+00,
          1.40000000e+01,   1.83540480e+01,   5.19130872e+01,
          1.60000000e+01],
       [  4.99682276e-01,   8.54642128e-02,   1.16964019e-01,
          8.82417334e-01,   3.00000000e+00,   5.00000000e+00,
          9.00000000e+00,   1.45676175e+01,   3.88908730e+01,
          1.60000000e+01],
       [  3.32999431e-01,   7.58517863e-01,   9.57923895e-01,
          8.58893091e-01,   4.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   2.77182631e+02,   5.23251131e+02,
          1.60000000e+01],
       [  1.19481319e-01,   5.16393929e-01,   8.57334431e-03,
          6.21834337e-01,   5.00000000e+00,   4.00000000e+00,
          1.00000000e+01,   1.47997769e+03,   2.63702046e+03,
          1.60000000e+01],
       [  7.87179804e-01,   9.29303701e-01,   5.02257370e-01,
          9.89073623e-01,   2.00000000e+00,   4.00000000e+00,
          1.30000000e+01,   8.80000000e+02,   1.31851023e+03,
          1.60000000e+01],
       [  2.71883593e-01,   3.03523995e-01,   7.76082888e-01,
          2.31191883e-01,   4.00000000e+00,   1.00000000e+00,
          1.10000000e+01,   6.98456463e+02,   1.17465907e+03,
          1.60000000e+01],
       [  3.25999117e-01,   3.93316786e-01,   5.96222219e-01,
          1.59517751e-01,   0.00000000e+00,   3.00000000e+00,
          9.00000000e+00,   1.09133822e+01,   1.64813778e+02,
          1.60000000e+01],
       [  1.25434927e-01,   9.15497073e-01,   9.36152996e-01,
          9.46849897e-01,   1.00000000e+00,   4.00000000e+00,
          1.10000000e+01,   5.50000000e+01,   1.03826174e+02,
          1.60000000e+01],
       [  2.20754135e-01,   2.08976731e-01,   1.98145901e-01,
          8.55898171e-01,   4.00000000e+00,   4.00000000e+00,
          1.20000000e+01,   4.93883301e+02,   7.39988845e+02,
          1.60000000e+01],
       [  9.17049535e-01,   6.26543410e-03,   2.08145487e-02,
          5.81651906e-01,   3.00000000e+00,   4.00000000e+00,
          1.10000000e+01,   3.91995436e+02,   4.93883301e+02,
          1.60000000e+01],
       [  3.44972430e-01,   6.08715328e-01,   9.36192542e-02,
          9.67605131e-01,   5.00000000e+00,   2.00000000e+00,
          1.00000000e+01,   2.61625565e+02,   2.93664768e+02,
          1.60000000e+01],
       [  2.17571318e-01,   3.97113944e-01,   9.00572365e-01,
          6.46500433e-01,   5.00000000e+00,   0.00000000e+00,
          1.40000000e+01,   9.72271824e+00,   1.37500000e+01,
          1.60000000e+01],
       [  6.09425226e-01,   9.53499121e-01,   3.67830864e-01,
          2.95025276e-01,   1.00000000e+00,   4.00000000e+00,
          1.10000000e+01,   1.09133822e+01,   3.72931009e+03,
          1.60000000e+01],
       [  6.03153526e-01,   6.75552074e-01,   2.27855896e-01,
          2.19524198e-01,   3.00000000e+00,   2.00000000e+00,
          1.20000000e+01,   1.94454365e+01,   4.89994295e+01,
          1.60000000e+01],
       [  4.44281858e-01,   5.36325911e-01,   7.90351741e-01,
          7.57456099e-01,   0.00000000e+00,   3.00000000e+00,
          1.30000000e+01,   5.50000000e+01,   1.64813778e+02,
          1.60000000e+01],
       [  6.53895144e-01,   8.87003260e-01,   9.60499685e-03,
          9.62404894e-01,   5.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   9.72271824e+00,   1.83540480e+01,
          1.60000000e+01],
       [  9.17862960e-01,   7.84819867e-01,   6.00791650e-01,
          4.39622459e-01,   0.00000000e+00,   2.00000000e+00,
          1.00000000e+01,   4.40000000e+02,   6.22253967e+02,
          1.60000000e+01],
       [  4.59416026e-01,   9.64323383e-01,   7.38905189e-03,
          3.65515440e-01,   4.00000000e+00,   0.00000000e+00,
          1.10000000e+01,   1.54338532e+01,   4.36535289e+01,
          1.60000000e+01],
       [  2.18429455e-01,   8.03875937e-02,   6.71319582e-01,
          7.06118679e-02,   0.00000000e+00,   2.00000000e+00,
          1.30000000e+01,   6.59255114e+02,   1.24450793e+03,
          1.60000000e+01],
       [  8.88572972e-01,   4.25046821e-01,   4.71270212e-01,
          3.01855318e-01,   0.00000000e+00,   4.00000000e+00,
          1.20000000e+01,   1.95997718e+02,   4.66163762e+02,
          1.60000000e+01],
       [  7.06000732e-02,   5.00510665e-01,   2.49573626e-02,
          2.57327761e-01,   1.00000000e+00,   1.00000000e+00,
          1.10000000e+01,   3.11126984e+02,   1.04650226e+03,
          1.60000000e+01],
       [  5.59480495e-01,   3.51992463e-01,   5.07058652e-01,
          5.04548853e-01,   0.00000000e+00,   0.00000000e+00,
          9.00000000e+00,   1.17465907e+03,   1.86465505e+03,
          1.60000000e+01],
       [  3.04304972e-01,   7.25535293e-01,   7.81526949e-03,
          9.95179416e-01,   1.00000000e+00,   4.00000000e+00,
          1.10000000e+01,   1.09133822e+01,   1.03826174e+02,
          1.60000000e+01],
       [  3.89979482e-01,   3.04110776e-01,   5.48185920e-01,
          7.46558343e-01,   1.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   2.59565436e+01,   4.12034446e+01,
          1.60000000e+01],
       [  6.03574550e-01,   7.71480041e-01,   6.40922688e-01,
          5.57669701e-01,   3.00000000e+00,   0.00000000e+00,
          1.00000000e+01,   2.18267645e+01,   3.46478289e+01,
          1.60000000e+01],
       [  6.33824101e-01,   1.00791411e-01,   8.86926243e-01,
          5.69302888e-01,   3.00000000e+00,   3.00000000e+00,
          1.00000000e+01,   1.95997718e+02,   2.07652349e+02,
          1.60000000e+01],
       [  4.83270844e-01,   4.31958188e-02,   8.89111208e-01,
          3.03748410e-02,   5.00000000e+00,   1.00000000e+00,
          1.10000000e+01,   6.17354127e+01,   8.73070579e+01,
          1.60000000e+01],
       [  4.87945587e-01,   6.90624501e-01,   4.78157023e-01,
          4.23797250e-02,   1.00000000e+00,   4.00000000e+00,
          8.00000000e+00,   4.36535289e+01,   1.84997211e+02,
          1.60000000e+01],
       [  4.17061098e-02,   8.54476414e-01,   2.04662729e-01,
          2.41624398e-01,   1.00000000e+00,   3.00000000e+00,
          9.00000000e+00,   1.10873052e+03,   2.09300452e+03,
          1.60000000e+01],
       [  5.93181370e-01,   2.04257731e-01,   6.25243785e-01,
          1.02961477e-01,   1.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   3.11126984e+02,   2.21746105e+03,
          1.60000000e+01],
       [  7.75826478e-01,   2.84495709e-01,   8.59169508e-01,
          6.31274988e-01,   2.00000000e+00,   2.00000000e+00,
          1.10000000e+01,   9.17702400e+00,   1.09133822e+01,
          1.60000000e+01],
       [  1.08605262e-01,   6.09662022e-01,   5.96985380e-01,
          3.49630688e-01,   2.00000000e+00,   4.00000000e+00,
          1.20000000e+01,   1.30812783e+02,   2.46941651e+02,
          1.60000000e+01],
       [  1.20932073e-01,   6.81907879e-01,   9.21699988e-01,
          1.67986030e-01,   3.00000000e+00,   0.00000000e+00,
          1.20000000e+01,   8.17579892e+00,   4.18600904e+03,
          1.60000000e+01],
       [  9.43480882e-01,   1.72716304e-01,   7.31615737e-01,
          2.35318539e-01,   5.00000000e+00,   3.00000000e+00,
          8.00000000e+00,   1.64813778e+02,   3.29627557e+02,
          1.60000000e+01],
       [  3.36802048e-01,   8.93346266e-01,   5.56808351e-01,
          4.23929893e-01,   4.00000000e+00,   0.00000000e+00,
          8.00000000e+00,   3.88908730e+01,   3.95106641e+03,
          1.60000000e+01],
       [  3.32561690e-01,   4.32786774e-01,   1.98115883e-01,
          4.70694013e-03,   2.00000000e+00,   4.00000000e+00,
          1.30000000e+01,   2.20000000e+02,   3.95106641e+03,
          1.60000000e+01],
       [  7.74137628e-01,   3.24171250e-01,   9.54343651e-02,
          6.80617300e-01,   5.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   1.10873052e+03,   3.95106641e+03,
          1.60000000e+01],
       [  2.00390003e-01,   4.80073455e-01,   2.03514730e-01,
          8.01010403e-01,   1.00000000e+00,   0.00000000e+00,
          1.40000000e+01,   4.66163762e+02,   6.22253967e+02,
          1.60000000e+01],
       [  3.88211952e-01,   7.23324070e-01,   9.08966653e-01,
          1.15439206e-01,   5.00000000e+00,   2.00000000e+00,
          1.10000000e+01,   6.54063913e+01,   8.73070579e+01,
          1.60000000e+01],
       [  2.05755206e-02,   5.84655459e-01,   6.36086635e-01,
          2.77855111e-01,   2.00000000e+00,   3.00000000e+00,
          1.10000000e+01,   1.95997718e+02,   2.93664768e+02,
          1.60000000e+01],
       [  4.92622980e-01,   9.89929425e-01,   9.76492480e-01,
          8.92141956e-03,   2.00000000e+00,   1.00000000e+00,
          1.40000000e+01,   5.87329536e+02,   1.86465505e+03,
          1.60000000e+01],
       [  7.59947779e-01,   5.97140933e-02,   3.37852753e-02,
          8.30424594e-01,   4.00000000e+00,   0.00000000e+00,
          1.20000000e+01,   9.79988590e+01,   1.30812783e+02,
          1.60000000e+01],
       [  2.33052433e-01,   3.95877031e-01,   7.80625965e-01,
          6.12112506e-01,   0.00000000e+00,   4.00000000e+00,
          1.20000000e+01,   3.88908730e+01,   1.23470825e+02,
          1.60000000e+01],
       [  6.25775589e-01,   1.73320709e-01,   7.32627992e-01,
          2.32759446e-01,   0.00000000e+00,   5.00000000e+00,
          1.30000000e+01,   3.29627557e+02,   7.83990872e+02,
          1.60000000e+01],
       [  6.13349483e-01,   4.70304177e-01,   2.07820805e-01,
          1.58491173e-01,   2.00000000e+00,   1.00000000e+00,
          1.40000000e+01,   2.07652349e+02,   2.46941651e+02,
          1.60000000e+01],
       [  5.88138769e-01,   9.02429914e-01,   6.52229789e-01,
          5.62310140e-01,   0.00000000e+00,   5.00000000e+00,
          1.10000000e+01,   1.66121879e+03,   3.95106641e+03,
          1.60000000e+01],
       [  2.32791422e-01,   2.67940554e-01,   8.00947476e-01,
          2.51281146e-01,   4.00000000e+00,   3.00000000e+00,
          1.30000000e+01,   3.88908730e+01,   7.77817459e+01,
          1.60000000e+01],
       [  6.80249933e-02,   6.42926405e-02,   8.62884989e-02,
          9.11257901e-01,   0.00000000e+00,   2.00000000e+00,
          1.10000000e+01,   9.79988590e+01,   1.86465505e+03,
          1.60000000e+01],
       [  4.63363314e-01,   7.89818197e-01,   6.07832977e-01,
          1.10045903e-01,   3.00000000e+00,   3.00000000e+00,
          1.20000000e+01,   8.66195722e+00,   1.37500000e+01,
          1.60000000e+01],
       [  4.40565527e-02,   2.91823856e-01,   9.46863941e-02,
          8.32175186e-01,   4.00000000e+00,   1.00000000e+00,
          1.10000000e+01,   1.17465907e+03,   1.86465505e+03,
          1.60000000e+01],
       [  4.59862069e-01,   3.49460539e-01,   9.07124286e-01,
          8.39087962e-01,   5.00000000e+00,   4.00000000e+00,
          1.30000000e+01,   8.17579892e+00,   6.54063913e+01,
          1.60000000e+01],
       [  5.92218547e-01,   4.65846456e-01,   9.50627801e-01,
          8.14859360e-01,   5.00000000e+00,   5.00000000e+00,
          1.20000000e+01,   1.63515978e+01,   8.24068892e+01,
          1.60000000e+01],
       [  3.01785372e-01,   9.53624952e-01,   6.82601271e-01,
          1.26688128e-01,   2.00000000e+00,   5.00000000e+00,
          1.10000000e+01,   6.17354127e+01,   5.23251131e+02,
          1.60000000e+01],
       [  3.87658424e-01,   4.06595450e-01,   7.97436325e-01,
          9.41025691e-01,   0.00000000e+00,   0.00000000e+00,
          9.00000000e+00,   1.16540940e+02,   2.20000000e+02,
          1.60000000e+01],
       [  8.17272867e-01,   7.40968764e-01,   8.04849419e-01,
          6.91434430e-01,   3.00000000e+00,   2.00000000e+00,
          1.00000000e+01,   3.46478289e+01,   1.23470825e+02,
          1.60000000e+01]])

Generation/rendering timing

~$0.189$ seconds per example/.aiff.

18.9s for 100


In [8]:
%time

for i, row in df.iterrows():
    
    session = nonrealtimetools.Session()
    
    builder = gk.generator.gendy1.make_builder(row)
    
    out = gk.generator.gendy1.build_out(builder)
    
    synthdef = builder.build()
    
    with session.at(0):
        synth_a = session.add_synth(duration=10, synthdef=synthdef)
    
    gk.util.render_session(session, this_dir, row["hash"])


1 loop, best of 3: 18.9 s per loop

Feature extraction timing

~$0.88$ seconds per example/.aiff.

1m 28s for 100


In [10]:
%timeit

for i, row in df.iterrows():
    
    y, sr = librosa.load(os.path.join(this_dir, "aif_files", row["hash"] + ".aiff"))
    
    _y_normed = librosa.util.normalize(y)
    _mfcc = librosa.feature.mfcc(y=_y_normed, sr=sr, n_mfcc=13)
    _cent = np.mean(librosa.feature.spectral_centroid(y=_y_normed, sr=sr))
    
    _mfcc_mean = gk.feature_extraction.get_stats(_mfcc)["mean"]
    
    X_row = np.append(_mfcc_mean, _cent)
    
    if i==0:
        X_mtx = X_row
    else:
        X_mtx = np.vstack((X_mtx, X_row))


1 loop, best of 3: 1min 28s per loop

Thought: For feature extraction, it would probably be faster to extract all time domain vectors $y$ into a NumPy array and perform the necessary LibROSA operations across the rows of the vector, possibly leveraging under-the-hood efficiencies.

"1min 43s per loop" below


In [13]:
for i, row in df.iterrows():
    
    session = nonrealtimetools.Session()
    
    builder = gk.generator.gendy1.make_builder(row)
    
    out = gk.generator.gendy1.build_out(builder)
    
    synthdef = builder.build()
    
    with session.at(0):
        synth_a = session.add_synth(duration=10, synthdef=synthdef)
    
    gk.util.render_session(session, this_dir, row["hash"])
    
    y, sr = librosa.load(os.path.join(this_dir, "aif_files", row["hash"] + ".aiff"))
    
    _y_normed = librosa.util.normalize(y)
    _mfcc = librosa.feature.mfcc(y=_y_normed, sr=sr, n_mfcc=13)
    _cent = np.mean(librosa.feature.spectral_centroid(y=_y_normed, sr=sr))
    
    _mfcc_mean = gk.feature_extraction.get_stats(_mfcc)["mean"]
    
    X_row = np.append(_mfcc_mean, _cent)
    
    if i==0:
        X_mtx = X_row
    else:
        X_mtx = np.vstack((X_mtx, X_row))


1 loop, best of 3: 1min 43s per loop

In [16]:
X_mtx.shape


Out[16]:
(100, 14)

In [20]:
def col_rename_4_mfcc(c):
    if (c < 13):
        return "mfcc_mean_{}".format(c)
    else:
        return "spectral_centroid"

In [21]:
pd.DataFrame(X_mtx).rename_axis(lambda c: col_rename_4_mfcc(c), axis=1)


Out[21]:
mfcc_mean_0 mfcc_mean_1 mfcc_mean_2 mfcc_mean_3 mfcc_mean_4 mfcc_mean_5 mfcc_mean_6 mfcc_mean_7 mfcc_mean_8 mfcc_mean_9 mfcc_mean_10 mfcc_mean_11 mfcc_mean_12 spectral_centroid
0 -130.944498 212.246248 22.733654 40.690030 12.067444 11.575786 -2.923093 1.963526 1.012338 5.041066 -1.778145 -0.059208 -0.053824 439.129383
1 -399.895787 110.209896 74.756361 45.275353 30.022552 24.211951 21.498928 18.683785 15.939682 14.143797 13.070332 12.103905 11.177688 28.382782
2 91.596323 84.458611 -51.472184 22.995390 -13.212321 10.045572 -8.217880 5.379077 -5.687071 3.532893 -3.146553 7.163779 4.395984 2359.783056
3 108.614834 41.703153 -43.736769 12.669656 -12.150096 11.946690 5.544302 22.679438 6.981179 5.568756 -8.453263 5.247114 4.105417 3321.156070
4 -257.498754 196.193063 51.860213 33.223307 34.137235 20.907093 19.182403 15.203466 11.925751 11.138111 9.420953 8.718725 7.627488 185.699671
5 -193.675721 200.459160 9.867697 17.697053 -1.148573 13.137136 8.874220 2.058959 2.494816 7.649791 0.977434 3.701533 4.431168 281.375797
6 -99.255339 187.928813 -2.400399 14.618994 -13.758809 3.472774 0.320724 4.100003 -6.144052 6.141625 0.164230 1.029655 -0.117211 603.629813
7 -65.096548 119.754086 -35.833374 -13.031844 -13.445218 21.014780 -18.855273 -9.250680 12.133204 -11.209625 -19.034837 25.895658 -14.952459 1365.673027
8 -150.207907 199.412785 22.935211 46.877748 22.706417 26.449756 13.847491 7.392376 -9.558257 -17.755563 -19.497822 -4.273309 9.658858 432.687709
9 -149.157050 210.391977 22.183814 42.031267 18.932379 22.919038 11.152427 9.410636 -0.429824 -3.695098 -8.920190 -6.296199 -3.881610 399.406245
10 -340.201357 165.930251 70.565247 30.761530 31.261373 26.647257 18.388280 16.187891 14.585171 12.103353 11.079403 10.246418 9.120839 71.720036
11 6.112265 148.653894 -38.904657 15.262946 0.279633 1.558111 1.101243 3.030016 -1.815661 5.338824 -2.578960 5.812729 -2.170402 1217.617461
12 -6.867327 175.536196 -8.756827 -0.813062 -25.938709 13.655398 8.412102 -5.728035 -15.097791 17.403257 -3.629439 -7.787881 3.420220 1074.711978
13 -273.189933 196.842472 44.006941 32.859688 30.937577 15.734702 11.308977 1.564761 -1.615650 1.674830 5.060813 5.387484 1.083436 138.239326
14 -1.179280 186.504575 -13.168122 7.702715 -6.959950 12.097020 -9.296268 0.670239 -1.656644 -1.433505 -4.144156 2.415664 -5.776426 966.652696
15 4.551287 136.437145 -51.754995 -7.027945 -4.988497 10.530632 -12.529925 6.626493 -3.929798 1.137125 -2.796705 3.836182 -2.504655 1328.003713
16 85.181769 119.017278 -55.916597 12.750346 -6.694964 1.678898 -2.779380 0.952695 -2.999644 1.798908 -4.016067 2.047174 -4.190821 1928.751797
17 90.191236 14.656168 -47.594906 5.551048 -17.733038 0.384498 -8.836457 11.887268 13.141246 27.478729 11.806024 5.389236 -10.406571 3692.915963
18 -83.394020 187.360281 20.232888 38.943839 -4.743480 -10.343549 -22.295417 6.048916 14.443237 7.609337 -19.994906 -6.595278 8.422725 716.223272
19 -73.318825 171.378497 -22.353387 -1.984178 -8.114975 23.694265 -4.649516 -0.134339 8.430598 6.442983 -3.987355 12.046813 -1.915677 777.648864
20 18.196390 36.265611 -57.300253 34.892149 -22.674767 7.679253 -10.483903 -2.425615 -0.539621 13.252110 31.706520 32.270856 15.487768 2876.427698
21 -202.216136 209.230301 34.720954 38.528029 26.253699 19.229712 17.196148 11.705229 11.479854 8.205794 6.759941 3.380408 0.222500 282.359030
22 -313.176685 155.511469 73.811454 32.795860 29.677764 27.192494 19.588297 15.911409 14.503815 12.399183 10.834480 9.971129 9.036276 108.303910
23 -9.615172 129.716910 -52.212949 -1.136605 13.376242 -4.356900 -18.290028 29.557186 -34.970057 26.575242 -15.458440 0.662723 -0.393250 1729.641814
24 -259.514615 185.040826 59.646164 30.595194 34.250743 22.800958 18.093277 16.527335 12.549139 11.291874 10.078129 8.796024 8.328326 172.221578
25 -35.086315 136.811693 -32.048640 -8.674571 -17.973700 17.048128 -7.139772 -12.386438 -0.602572 7.252857 -16.222938 8.550010 -0.207872 1251.268593
26 2.140036 22.958742 -61.243439 31.232914 -18.617048 -1.252628 -2.374840 -8.556711 -5.999625 -3.039336 15.848294 32.565206 34.893593 2883.351422
27 -180.303722 210.031939 25.614925 42.866791 21.707217 23.702508 15.505624 14.207790 8.508061 4.411809 -1.929581 -6.125128 -8.086553 320.154860
28 109.403837 69.055065 -16.386115 14.482498 -7.015294 7.962498 -3.539384 7.110676 -3.415325 4.134727 -3.697713 4.036978 -3.090759 3040.898005
29 -105.319927 188.452663 -9.875766 9.693579 -1.902148 16.048841 -4.273755 3.942981 3.458656 2.168673 1.654555 5.832600 0.048751 563.021922
... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
70 -307.813300 171.501835 43.073483 1.186148 -17.059571 -4.280283 26.887092 15.969707 -15.146229 -1.326479 25.602239 4.725988 -7.229602 102.412996
71 -256.262220 177.667570 35.279755 41.074118 32.646052 22.869990 7.365998 -2.746482 -11.832048 -6.774149 4.203519 12.727086 8.279531 194.582872
72 -123.638507 196.101218 16.091192 37.703966 8.586197 6.572689 -8.640426 -0.573421 2.027123 6.996951 -3.244056 -2.842037 -1.415446 547.827122
73 91.201402 61.890904 -50.296706 34.611358 -19.843078 34.275911 5.463908 26.850593 -12.961399 -1.970077 -4.427944 23.936790 2.149188 3021.571060
74 61.521574 75.549878 -70.206479 4.072889 -12.268407 -0.804737 -8.762767 1.657496 -10.471751 -2.039512 -8.164378 1.220309 -0.395788 2299.984637
75 -348.854984 131.896991 77.298459 38.691859 27.370018 25.832986 21.517795 16.635897 14.360958 13.147170 11.757687 10.624068 9.748905 69.675077
76 -3.951955 175.926868 -16.887992 2.177106 -21.221609 8.061110 1.376236 -0.831991 -8.723344 6.918125 -6.161587 2.025728 -1.955819 1068.693765
77 6.312709 64.119320 0.662811 20.428846 2.098026 9.363664 -1.253574 7.691288 0.152815 6.425648 -0.281768 6.772991 0.180943 2403.080959
78 -265.967826 189.684948 40.921330 28.918336 3.856197 -16.878804 -8.641422 11.581525 22.577539 1.036239 -14.762041 3.065197 17.231147 160.792166
79 114.066912 65.705402 -13.982049 15.738120 -2.697014 12.161346 -0.194070 7.555816 -1.360006 6.779690 -1.487610 5.401036 -1.348300 3137.934756
80 52.080801 -2.029646 -9.214531 16.661814 14.812910 28.503113 7.405197 0.958969 -1.424717 17.050482 5.375132 2.593108 0.867433 4607.674790
81 0.129542 1.296577 1.134177 29.180047 16.657870 13.876821 -5.846684 14.828635 13.349497 2.471706 -3.025962 17.216665 0.068455 3728.938367
82 50.185707 69.750195 -62.128786 31.666168 -12.838869 -0.678508 3.423202 -9.808444 2.928664 -8.830149 4.075028 7.549014 20.555221 2545.937078
83 -141.369083 200.989763 22.828728 47.725317 23.799062 24.674824 5.827063 -2.230552 -16.662661 -13.424836 -4.548865 10.181220 9.344715 427.742851
84 -33.911887 177.238500 1.460917 -1.179384 -29.288186 9.006010 16.565548 -4.567549 -23.957549 18.389237 7.319709 -18.177522 3.227128 1033.168160
85 95.620136 24.162909 -21.330590 12.638309 -5.323904 19.195329 12.701693 19.753890 -3.804634 -5.664643 -4.645723 17.033040 6.003195 4041.866233
86 -78.124385 180.139992 1.803036 26.684432 -10.907147 -10.352879 -19.287853 2.790099 3.456098 -2.008889 -21.425404 -8.388509 0.576494 809.815892
87 -102.630029 208.396622 18.649455 38.064037 7.297848 6.976391 -8.479380 -0.673444 -0.535007 4.607480 -4.505434 -2.000420 -1.579127 536.744984
88 36.237315 81.456456 -68.728021 6.888781 0.927624 -3.934688 -7.373528 6.245210 -12.398505 7.953072 -8.427711 1.291764 -8.398082 2154.611718
89 -13.889859 152.856319 -21.261154 -13.211758 -10.707592 27.258129 -17.125446 -8.789949 14.124429 -4.738955 -14.482688 19.706406 -16.619446 1301.327022
90 83.447113 1.812704 4.520221 28.265909 15.011482 6.466598 -8.997236 16.023643 7.023527 -6.226134 -0.380711 14.075010 -10.386671 4891.810972
91 -185.604592 206.337093 25.511371 45.913118 24.236532 25.398985 16.804346 16.984858 12.793724 9.822169 1.918410 -7.251096 -15.291040 334.386811
92 106.618408 68.227289 -35.364793 11.350113 -13.695992 3.597132 -9.584854 3.928110 -4.155313 6.291189 -1.728305 5.843339 -1.471005 2930.730071
93 -413.286972 103.664304 74.358332 46.970740 31.255063 25.115325 22.120139 18.952836 15.974466 13.969859 12.764401 11.691259 10.617216 27.406534
94 45.976830 -14.512710 -13.656387 18.141022 8.774175 36.462065 11.854833 0.298979 -15.362854 20.456249 22.244089 1.058561 -17.340131 4586.614343
95 -219.990763 204.620151 41.814556 36.895815 30.497998 20.563205 18.753211 11.094620 6.271293 1.090289 -0.426076 1.362617 3.783278 212.787669
96 -224.056647 211.048163 36.244777 40.204388 27.123646 20.813520 16.674609 10.407743 7.226611 3.281310 2.596085 1.825429 1.610101 212.826591
97 -61.565860 204.165510 8.677969 26.727983 -1.837981 8.164580 -4.215543 1.924936 -4.988670 2.121297 -3.525907 1.950059 -2.732152 660.369735
98 -50.747979 192.216719 1.366500 20.313345 -14.808932 -7.260769 -10.273262 7.347047 -2.840807 -3.044787 -5.123745 3.984245 -4.706193 796.513395
99 -236.292400 206.459818 34.469195 37.975486 24.656601 13.375484 6.655611 -1.206207 1.702022 4.473805 5.835302 1.604360 -0.253468 195.427304

100 rows × 14 columns


In [23]:
from sklearn import linear_model
from sklearn import model_selection
from sklearn import preprocessing

In [24]:
import sklearn as sk

In [39]:
import matplotlib.pyplot as plt
%matplotlib inline

In [66]:
pmtx.shape


Out[66]:
(100, 10)

In [67]:
X_mtx.shape


Out[67]:
(100, 14)

In [68]:
X_mtx[0]


Out[68]:
array([ -1.30944498e+02,   2.12246248e+02,   2.27336540e+01,
         4.06900302e+01,   1.20674442e+01,   1.15757863e+01,
        -2.92309292e+00,   1.96352599e+00,   1.01233809e+00,
         5.04106581e+00,  -1.77814489e+00,  -5.92080878e-02,
        -5.38241320e-02,   4.39129383e+02])

In [31]:
X_train, X_test, y_train, y_test = sk.model_selection.train_test_split(
    X_mtx, pmtx, test_size=0.4, random_state=1)

In [38]:
# Create linear regression objectc
regr = linear_model.LinearRegression()

# Train the model using the training sets
regr.fit(X_train, y_train)

# The coefficients
print('Coefficients: \n', regr.coef_)
# The mean squared error
print("Mean squared error: %.2f"
      % np.mean((regr.predict(X_test) - y_test) ** 2))
# Explained variance score: 1 is perfect prediction
print('Variance score: %.2f' % regr.score(X_test, y_test))


Coefficients: 
 [[ -7.64326344e-04   5.43840972e-04   8.33835578e-04  -1.63296951e-03
    1.84396630e-03  -1.63494109e-03  -4.13973644e-03   9.93769874e-03
   -1.21937858e-02   1.07145282e-02  -3.50315085e-03   8.43229154e-03
    5.97796792e-03   7.19034767e-05]
 [  4.14076160e-03   1.49650267e-03   7.37848988e-03  -5.89920432e-03
    6.43978853e-03   2.56377513e-03   5.08002799e-03   6.34448830e-03
    2.48995221e-03  -9.09774452e-04   3.85030377e-03   1.95772826e-03
    1.02450172e-02  -8.23419500e-05]
 [ -1.58993713e-03   2.26292332e-03  -2.75211523e-03   7.45264689e-03
   -9.26048513e-04  -1.65945356e-03  -4.77375839e-03   1.51891806e-02
   -1.34561050e-02   1.02081968e-02  -5.44665508e-03   1.38347150e-02
   -1.23215340e-02   1.37929495e-04]
 [  7.85798120e-04   2.41554881e-03   1.78210384e-03  -9.60912755e-04
   -5.29459040e-03   3.47813067e-03  -1.96233126e-03   2.84434039e-03
    1.35618930e-03  -1.21362974e-03   2.00095401e-03   1.95225907e-03
    7.85679139e-03   4.24680697e-05]
 [  7.59350445e-03  -1.94676177e-02   4.10676580e-05  -1.23607006e-02
    8.17922958e-03   1.16830267e-03   2.88827243e-02  -5.40019464e-02
    5.85324462e-02  -3.58495151e-02   2.00269831e-02  -5.54215649e-02
    3.18534999e-02  -1.65913946e-03]
 [ -7.57996905e-04   1.48878162e-02  -2.02212716e-02  -1.26859790e-02
    3.28634748e-02  -1.00350966e-02   2.60161747e-02   3.03667595e-02
    1.97929204e-02  -5.33650786e-03   1.85626625e-02   1.78251979e-04
   -1.00894504e-02   3.90389290e-04]
 [ -7.42013192e-03   1.64585909e-02  -3.66278515e-02  -1.15205242e-02
    6.69830320e-03   2.32797054e-02  -1.70235246e-02   4.02606929e-02
    5.74493635e-02  -5.28742501e-02   1.69008951e-02   2.07720815e-02
    1.42142293e-02   6.60588879e-04]
 [ -4.02348887e+00   4.78619594e+00  -5.20732849e+00   1.43378482e+00
   -1.86539229e-01  -8.95742471e-01  -2.38130301e+00  -1.14239048e-01
   -7.14676019e+00   6.04096194e+00  -5.28217010e+00   6.65615280e+00
   -4.69621834e+00   6.35692181e-01]
 [  1.10679242e+01  -1.45142504e+01   2.78669011e+01  -1.57162603e+01
    2.37260432e+01  -2.25193655e+01   1.09819093e+01  -2.93601263e+01
    1.87695403e+01  -2.66324515e+01   2.66129494e+01  -3.35883337e+01
   -9.61925708e+00  -2.26352472e-01]
 [  0.00000000e+00   0.00000000e+00   0.00000000e+00   0.00000000e+00
    0.00000000e+00   0.00000000e+00   0.00000000e+00   0.00000000e+00
    0.00000000e+00   0.00000000e+00   0.00000000e+00   0.00000000e+00
    0.00000000e+00   0.00000000e+00]]
Mean squared error: 80571.86
Variance score: 0.27
/Users/spacecoffin/Development/sprbrg/lib/python3.5/site-packages/scipy/linalg/basic.py:884: RuntimeWarning: internal gelsd driver lwork query error, required iwork dimension not returned. This is likely the result of LAPACK bug 0038, fixed in LAPACK 3.2.2 (released July 21, 2010). Falling back to 'gelss' driver.
  warnings.warn(mesg, RuntimeWarning)

Preprocessing


In [42]:
# Scale data
standard_scaler = sk.preprocessing.StandardScaler()
X_scaled = standard_scaler.fit_transform(X_mtx)
#Xte_s = standard_scaler.transform(X_test)

robust_scaler = sk.preprocessing.RobustScaler()
X_rscaled = robust_scaler.fit_transform(X_mtx)
#Xte_r = robust_scaler.transform(X_test)

In [57]:
X_scaled.mean(axis=0)


Out[57]:
array([  2.95319325e-16,   1.93178806e-16,   3.21964677e-17,
        -5.66213743e-17,  -6.66133815e-18,   3.96696564e-16,
         5.88418203e-17,  -1.86517468e-16,   7.00828284e-17,
         3.03090886e-16,  -1.66533454e-17,   7.10542736e-17,
        -1.66533454e-16,   4.86277685e-16])

In [59]:
X_scaled.mean(axis=0).mean()


Out[59]:
1.0526797687506115e-16

In [61]:
X_scaled.std(axis=0)


Out[61]:
array([ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.])

In [43]:
X_train, X_test, y_train, y_test = sk.model_selection.train_test_split(
    X_scaled, pmtx, test_size=0.4, random_state=1)

In [44]:
# Create linear regression objectc
regr = linear_model.LinearRegression()

# Train the model using the training sets
regr.fit(X_train, y_train)

# The coefficients
print('Coefficients: \n', regr.coef_)
# The mean squared error
print("Mean squared error: %.2f"
      % np.mean((regr.predict(X_test) - y_test) ** 2))
# Explained variance score: 1 is perfect prediction
print('Variance score: %.2f' % regr.score(X_test, y_test))


Coefficients: 
 [[ -1.16321270e-01   3.82759545e-02   3.54522472e-02  -2.71379638e-02
    3.49357740e-02  -1.90305103e-02  -5.18060153e-02   1.02756139e-01
   -1.37969854e-01   1.01095033e-01  -3.91266879e-02   7.60528902e-02
    5.51004476e-02   1.01775935e-01]
 [  6.30174076e-01   1.05325032e-01   3.13711785e-01  -9.80375889e-02
    1.22008193e-01   2.98420226e-02   6.35731312e-02   6.56022225e-02
    2.81732309e-02  -8.58401572e-03   4.30040385e-02   1.76572278e-02
    9.44309239e-02  -1.16551095e-01]
 [ -2.41969294e-01   1.59266319e-01  -1.17011881e-01   1.23853912e-01
   -1.75449093e-02  -1.93158324e-02  -5.97403733e-02   1.57056638e-01
   -1.52252703e-01   9.63176327e-02  -6.08336845e-02   1.24778663e-01
   -1.13570706e-01   1.95232608e-01]
 [  1.19589016e-01   1.70008221e-01   7.57698369e-02  -1.59691993e-02
   -1.00311277e-01   4.04850070e-02  -2.45572550e-02   2.94105753e-02
    1.53449669e-02  -1.14509885e-02   2.23486532e-02   1.76078998e-02
    7.24180405e-02   6.01115230e-02]
 [  1.15563998e+00  -1.37014621e+00   1.74607657e-03  -2.05419785e-01
    1.54963632e-01   1.35988973e-02   3.61447856e-01  -5.58381942e-01
    6.62281034e-01  -3.38251751e-01   2.23681353e-01  -4.99860587e-01
    2.93601793e-01  -2.34843261e+00]
 [ -1.15358005e-01   1.04781619e+00  -8.59749258e-01  -2.10825516e-01
    6.22631187e-01  -1.16807272e-01   3.25574916e-01   3.13993315e-01
    2.23952297e-01  -5.03516749e-02   2.07326357e-01   1.60769800e-03
   -9.29970255e-02   5.52577382e-01]
 [ -1.12925477e+00   1.15836854e+00  -1.55730900e+00  -1.91457077e-01
    1.26906010e-01   2.70972866e-01  -2.13037953e-01   4.16296919e-01
    6.50026205e-01  -4.98885623e-01   1.88766079e-01   1.87348461e-01
    1.31016160e-01   9.35031986e-01]
 [ -6.12326578e+02   3.36856227e+02  -2.21400360e+02   2.38277569e+01
   -3.53417106e+00  -1.04263306e+01  -2.98004044e+01  -1.18123560e+00
   -8.08639317e+01   5.69984265e+01  -5.89965520e+01   6.00334626e+01
   -4.32862365e+01   8.99791901e+02]
 [  1.68440485e+03  -1.02152433e+03   1.18481904e+03  -2.61185099e+02
    4.49513465e+02  -2.62122605e+02   1.37431204e+02  -3.03584694e+02
    2.12372989e+02  -2.51285780e+02   2.97240003e+02  -3.02941359e+02
   -8.86631341e+01  -3.20391106e+02]
 [  0.00000000e+00   0.00000000e+00   0.00000000e+00   0.00000000e+00
    0.00000000e+00   0.00000000e+00   0.00000000e+00   0.00000000e+00
    0.00000000e+00   0.00000000e+00   0.00000000e+00   0.00000000e+00
    0.00000000e+00   0.00000000e+00]]
Mean squared error: 80571.86
Variance score: 0.27

In [64]:
y_test[0]


Out[64]:
array([  3.32561690e-01,   4.32786774e-01,   1.98115883e-01,
         4.70694013e-03,   2.00000000e+00,   4.00000000e+00,
         1.30000000e+01,   2.20000000e+02,   3.95106641e+03,
         1.60000000e+01])

In [71]:
X_test[0]


Out[71]:
array([ 1.01086499, -1.90257535, -0.26937053, -0.36982032,  0.42170525,
        1.26344082,  0.32565618, -0.63435796, -0.34336578,  1.15169182,
        0.46333517, -0.35546419, -0.22943205,  2.27780905])

In [70]:
regr.predict(X_test[0])


/Users/spacecoffin/Development/sprbrg/lib/python3.5/site-packages/sklearn/utils/validation.py:395: DeprecationWarning: Passing 1d arrays as data is deprecated in 0.17 and will raise ValueError in 0.19. Reshape your data either using X.reshape(-1, 1) if your data has a single feature or X.reshape(1, -1) if it contains a single sample.
  DeprecationWarning)
Out[70]:
array([[  5.81091297e-01,   6.46632233e-01,   4.05079195e-01,
          3.24762723e-01,   1.28734484e+00,   1.97150205e+00,
          1.01313047e+01,   1.11999703e+03,   3.38978192e+03,
          1.60000000e+01]])

In [72]:
y_test[0]


Out[72]:
array([  3.32561690e-01,   4.32786774e-01,   1.98115883e-01,
         4.70694013e-03,   2.00000000e+00,   4.00000000e+00,
         1.30000000e+01,   2.20000000e+02,   3.95106641e+03,
         1.60000000e+01])

In [ ]: