--- a
+++ b/stats/function_runtimes.txt
@@ -0,0 +1,410 @@
+   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
+       18    0.000    0.000    0.000    0.000 :0(__subclasses__)
+   102362    0.140    0.000    0.140    0.000 :0(abs)
+       14    0.000    0.000    0.000    0.000 :0(acquire)
+       38    0.000    0.000    0.000    0.000 :0(add)
+        2    0.000    0.000    0.000    0.000 :0(all)
+        2    0.000    0.000    0.000    0.000 :0(allocate_lock)
+        9    0.000    0.000    0.000    0.000 :0(any)
+  4108327    9.644    0.000    9.644    0.000 :0(append)
+        5    0.000    0.000    0.000    0.000 :0(arange)
+        2    0.000    0.000    0.000    0.000 :0(argsort)
+     2036   13.908    0.007   13.908    0.007 :0(array)
+       11    0.000    0.000    0.000    0.000 :0(astype)
+        9    0.000    0.000    0.000    0.000 :0(bincount)
+       22    0.000    0.000    0.000    0.000 :0(can_cast)
+        1    0.000    0.000    0.000    0.000 :0(ceil)
+        4    0.000    0.000    0.000    0.000 :0(compile)
+   953000   35.340    0.000   35.340    0.000 :0(concatenate)
+        2    0.000    0.000    0.000    0.000 :0(coo_tocsr)
+       26    0.000    0.000    0.000    0.000 :0(copy)
+        6    0.000    0.000    0.000    0.000 :0(copyto)
+        5    0.000    0.000    0.000    0.000 :0(csc_tocsr)
+       12    0.000    0.000    0.000    0.000 :0(csr_has_sorted_indices)
+        5    0.000    0.000    0.000    0.000 :0(csr_matmat_pass1)
+        5    0.000    0.000    0.000    0.000 :0(csr_matmat_pass2)
+        1    0.000    0.000    0.000    0.000 :0(csr_matvec)
+       10    0.008    0.001    0.008    0.001 :0(csr_sort_indices)
+        2    0.000    0.000    0.000    0.000 :0(csr_sum_duplicates)
+        5    0.000    0.000    0.000    0.000 :0(cumsum)
+       14    0.000    0.000    0.000    0.000 :0(dumps)
+       67    0.000    0.000    0.000    0.000 :0(empty)
+    23736    0.056    0.000    0.056    0.000 :0(end)
+       10    0.000    0.000    0.000    0.000 :0(endswith)
+       10    0.000    0.000    0.000    0.000 :0(expandptr)
+       13    0.004    0.000    0.004    0.000 :0(extend)
+    99614    0.908    0.000    0.908    0.000 :0(findall)
+  1905937   34.224    0.000   34.224    0.000 :0(flatten)
+        4    0.000    0.000    0.000    0.000 :0(from_iterable)
+       20    0.000    0.000    0.000    0.000 :0(frombuffer)
+ 13961192   33.944    0.000   33.944    0.000 :0(get)
+        5    0.000    0.000    0.000    0.000 :0(get_csr_submatrix)
+     4092    0.004    0.000    0.004    0.000 :0(getattr)
+       12    0.000    0.000    0.000    0.000 :0(geterrobj)
+ 13548688   32.348    0.000   32.348    0.000 :0(groups)
+      232    0.000    0.000    0.000    0.000 :0(hasattr)
+       17    0.000    0.000    0.000    0.000 :0(hash)
+   415315    0.988    0.000    0.988    0.000 :0(isinstance)
+        2    0.000    0.000    0.000    0.000 :0(islower)
+    72/48    0.000    0.000    0.000    0.000 :0(issubclass)
+       20    0.000    0.000    0.000    0.000 :0(item)
+        4    0.000    0.000    0.000    0.000 :0(items)
+     3922    0.000    0.000    0.000    0.000 :0(iter)
+     3921    0.008    0.000    0.008    0.000 :0(iteritems)
+     1448    0.008    0.000    0.008    0.000 :0(join)
+     5482    0.012    0.000    0.012    0.000 :0(keys)
+1745430/1745408    4.720    0.000    4.720    0.000 :0(len)
+      906    2.420    0.003    2.420    0.003 :0(listdir)
+    49811    0.744    0.000    0.744    0.000 :0(lower)
+       10    0.000    0.000    0.000    0.000 :0(lstat)
+318446/15   60.324    0.000 1730.964  115.398 :0(map)
+    23736    0.140    0.000    0.140    0.000 :0(match)
+     4812    0.016    0.000    0.024    0.000 :0(max)
+       10    0.000    0.000    0.000    0.000 :0(mean)
+     5678    0.016    0.000    0.016    0.000 :0(min)
+        9    0.000    0.000    0.000    0.000 :0(mro)
+       68    0.000    0.000    0.000    0.000 :0(newbyteorder)
+        1    0.000    0.000    0.000    0.000 :0(next)
+        4    0.628    0.157    0.628    0.157 :0(nonzero)
+    11870    0.352    0.000    0.352    0.000 :0(open)
+       89    0.000    0.000    0.000    0.000 :0(ord)
+       10    0.000    0.000    0.000    0.000 :0(partition)
+        1    0.000    0.000    0.000    0.000 :0(permutation)
+       30    0.000    0.000    0.000    0.000 :0(pop)
+        1    0.000    0.000    0.000    0.000 :0(randint)
+  2134035    5.168    0.000    5.168    0.000 :0(range)
+       16    0.000    0.000    0.000    0.000 :0(ravel)
+    11868   53.852    0.005   53.852    0.005 :0(read)
+   317791    3.552    0.000   81.576    0.000 :0(reduce)
+       14    0.000    0.000    0.000    0.000 :0(release)
+       31    0.000    0.000    0.000    0.000 :0(remove)
+ 13974253   35.392    0.000   35.392    0.000 :0(replace)
+        1    0.000    0.000    0.000    0.000 :0(reshape)
+        2    0.000    0.000    0.000    0.000 :0(rfind)
+        2    0.000    0.000    0.000    0.000 :0(rstrip)
+ 13761938   47.284    0.000   47.284    0.000 :0(search)
+        6    0.000    0.000    0.000    0.000 :0(searchsorted)
+        4    0.000    0.000    0.000    0.000 :0(set_verbosity_wrap)
+       60    0.000    0.000    0.000    0.000 :0(setattr)
+        6    0.000    0.000    0.000    0.000 :0(seterrobj)
+        1    0.004    0.004    0.004    0.004 :0(setprofile)
+     1626    1.304    0.001    2.096    0.001 :0(sort)
+     1815    1.996    0.001   10.812    0.006 :0(sorted)
+  1969478    4.440    0.000    4.440    0.000 :0(split)
+       28    0.000    0.000    0.000    0.000 :0(startswith)
+    10962    0.212    0.000    0.212    0.000 :0(stat)
+        4    0.000    0.000    0.000    0.000 :0(sum)
+        4    0.000    0.000    0.000    0.000 :0(time)
+        1    1.004    1.004    1.004    1.004 :0(train_wrap)
+       20    0.000    0.000    0.000    0.000 :0(update)
+    24724    0.052    0.000    0.052    0.000 :0(upper)
+  1270599   18.528    0.000   18.528    0.000 :0(zeros)
+       15    0.016    0.001    0.016    0.001 :0(zip)
+        1    0.012    0.012 1838.404 1838.404 <string>:1(<module>)
+        4    0.000    0.000    0.000    0.000 __init__.py:137(safe_indexing)
+    11868    0.200    0.000  870.100    0.073 __init__.py:257(load)
+    11868    0.096    0.000  816.048    0.069 __init__.py:293(loads)
+        6    0.000    0.000    0.000    0.000 __init__.py:457(tosequence)
+        1    0.000    0.000    0.000    0.000 _abcoll.py:24(_hasattr)
+        3    0.000    0.000    0.000    0.000 _abcoll.py:26(<genexpr>)
+       19    0.000    0.000    0.000    0.000 _abcoll.py:98(__subclasshook__)
+       57    0.000    0.000    0.008    0.000 _methods.py:15(_amax)
+       61    0.000    0.000    0.000    0.000 _methods.py:19(_amin)
+        6    0.000    0.000    0.000    0.000 _methods.py:23(_sum)
+        6    0.000    0.000    0.000    0.000 _methods.py:31(_any)
+        2    0.000    0.000    0.000    0.000 _methods.py:35(_all)
+       10    0.000    0.000    0.000    0.000 _methods.py:39(_count_reduce_items)
+       10    0.000    0.000    0.000    0.000 _methods.py:49(_mean)
+       19    0.000    0.000    0.000    0.000 _weakrefset.py:16(__init__)
+       19    0.000    0.000    0.000    0.000 _weakrefset.py:20(__enter__)
+       19    0.000    0.000    0.000    0.000 _weakrefset.py:26(__exit__)
+       11    0.000    0.000    0.000    0.000 _weakrefset.py:36(__init__)
+       19    0.000    0.000    0.000    0.000 _weakrefset.py:52(_commit_removals)
+       47    0.000    0.000    0.000    0.000 _weakrefset.py:58(__iter__)
+       92    0.000    0.000    0.000    0.000 _weakrefset.py:70(__contains__)
+       19    0.000    0.000    0.000    0.000 _weakrefset.py:83(add)
+       36    0.000    0.000    0.000    0.000 abc.py:128(__instancecheck__)
+     21/5    0.000    0.000    0.000    0.000 abc.py:148(__subclasscheck__)
+       20    0.000    0.000    0.000    0.000 arrayprint.py:343(array2string)
+        6    0.000    0.000    0.000    0.000 arraysetops.py:201(intersect1d)
+       49    0.000    0.000    0.000    0.000 arraysetops.py:93(unique)
+        1    0.000    0.000    0.000    0.000 base.py:177(decision_function)
+        2    0.000    0.000    0.000    0.000 base.py:190(__len__)
+        7    0.000    0.000    0.000    0.000 base.py:195(asformat)
+        1    0.004    0.004    0.004    0.004 base.py:210(predict)
+        6    0.000    0.000    0.004    0.001 base.py:276(__mul__)
+        7    0.000    0.000 1187.948  169.707 base.py:409(fit_transform)
+       20    0.000    0.000    0.000    0.000 base.py:426(__getattr__)
+       68    0.000    0.000    0.000    0.000 base.py:63(__init__)
+        1    0.000    0.000    0.000    0.000 base.py:639(_get_liblinear_solver_type)
+        1    0.000    0.000    1.004    1.004 base.py:701(_fit_liblinear)
+       93    0.004    0.000    0.004    0.000 base.py:702(isspmatrix)
+       68    0.000    0.000    0.000    0.000 base.py:71(set_shape)
+      279    0.000    0.000    0.000    0.000 base.py:93(get_shape)
+    98332    0.296    0.000    0.424    0.000 baseline_model.py:174(<lambda>)
+        1    5.340    5.340   93.164   93.164 baseline_model.py:21(get_preprocessed_patients)
+        1    0.000    0.000    0.000    0.000 baseline_model.py:39(change_ef_values_to_categories)
+      906    0.028    0.000    8.452    0.009 baseline_model.py:59(get_ef_delta)
+        5    0.000    0.000    0.000    0.000 baseline_model.py:91(get_feature_names)
+        1    0.704    0.704 1838.392 1838.392 baseline_model.py:94(main)
+      783    4.724    0.006  142.840    0.182 baseline_transformer.py:110(get_encounters_features)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:174(fit)
+        2    0.000    0.000  240.212  120.106 baseline_transformer.py:177(transform)
+      783    4.716    0.006  235.360    0.301 baseline_transformer.py:181(get_labs_counts)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:190(fit)
+        2    0.000    0.000  241.592  120.796 baseline_transformer.py:193(transform)
+      783    4.664    0.006  236.892    0.303 baseline_transformer.py:197(get_low_counts)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:206(fit)
+        2    0.000    0.000  241.736  120.868 baseline_transformer.py:209(transform)
+      783    4.552    0.006  237.008    0.303 baseline_transformer.py:213(get_high_counts)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:222(fit)
+        2    0.000    0.000  236.404  118.202 baseline_transformer.py:225(transform)
+      783    4.636    0.006  231.560    0.296 baseline_transformer.py:229(get_labs_latest_high)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:245(fit)
+        2    0.000    0.000  245.000  122.500 baseline_transformer.py:248(transform)
+      783    4.776    0.006  240.124    0.307 baseline_transformer.py:252(get_labs_latest_low)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:89(__init__)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:92(fit)
+        2    0.000    0.000  147.512   73.756 baseline_transformer.py:95(transform)
+        1    0.000    0.000    0.000    0.000 baseline_transformer.py:99(get_feature_names)
+        1    0.000    0.000    0.000    0.000 class_weight.py:12(compute_class_weight)
+        1    0.000    0.000    0.000    0.000 classification.py:1086(recall_score)
+        1    0.000    0.000    0.000    0.000 classification.py:112(_weighted_sum)
+        1    0.000    0.000    0.004    0.004 classification.py:121(accuracy_score)
+        4    0.000    0.000    0.008    0.002 classification.py:46(_check_targets)
+        1    0.000    0.000    0.004    0.004 classification.py:479(f1_score)
+        1    0.000    0.000    0.004    0.004 classification.py:573(fbeta_score)
+        6    0.000    0.000    0.000    0.000 classification.py:680(_prf_divide)
+        3    0.000    0.000    0.004    0.001 classification.py:724(precision_recall_fscore_support)
+        1    0.000    0.000    0.000    0.000 classification.py:994(precision_score)
+       42    0.000    0.000    0.004    0.000 compressed.py:101(check_format)
+    42/37    0.008    0.000    0.044    0.001 compressed.py:22(__init__)
+        1    0.000    0.000    0.000    0.000 compressed.py:480(_mul_vector)
+        5    0.000    0.000    0.004    0.001 compressed.py:506(_mul_sparse_matrix)
+       10    0.000    0.000    0.000    0.000 compressed.py:765(tocoo)
+        2    0.000    0.000    0.000    0.000 compressed.py:807(sum_duplicates)
+       12    0.000    0.000    0.000    0.000 compressed.py:820(__get_sorted)
+       15    0.000    0.000    0.000    0.000 compressed.py:836(__set_sorted)
+       12    0.000    0.000    0.008    0.001 compressed.py:852(sort_indices)
+      186    0.000    0.000    0.000    0.000 compressed.py:86(getnnz)
+       44    0.000    0.000    0.000    0.000 compressed.py:861(prune)
+        5    0.000    0.000    0.000    0.000 compressed.py:90(_set_self)
+        2    0.000    0.000    6.832    3.416 construct.py:396(hstack)
+        2    0.012    0.006    6.832    3.416 construct.py:457(bmat)
+    26/16    0.008    0.000    6.816    0.426 coo.py:115(__init__)
+      132    0.004    0.000    0.004    0.000 coo.py:195(getnnz)
+       26    0.000    0.000    0.008    0.000 coo.py:206(_check)
+        2    0.000    0.000    0.000    0.000 coo.py:286(tocsr)
+       10    0.000    0.000    0.000    0.000 coo.py:387(isspmatrix_coo)
+        2    0.000    0.000    0.000    0.000 coo.py:73(coo_tocsr)
+        1    0.000    0.000    0.000    0.000 cross_validation.py:1711(train_test_split)
+        3    0.000    0.000    0.000    0.000 cross_validation.py:1815(<genexpr>)
+        1    0.000    0.000    0.000    0.000 cross_validation.py:752(__init__)
+        2    0.000    0.000    0.000    0.000 cross_validation.py:780(__iter__)
+        2    0.000    0.000    0.000    0.000 cross_validation.py:860(_iter_indices)
+        1    0.000    0.000    0.000    0.000 cross_validation.py:883(_validate_shuffle_split)
+        5    0.000    0.000    0.000    0.000 csc.py:115(csc_tocsr)
+        5    0.000    0.000    0.000    0.000 csc.py:128(tocsr)
+       15    0.000    0.000    0.000    0.000 csc.py:193(_swap)
+        5    0.000    0.000    0.000    0.000 csr.py:110(transpose)
+      140    0.000    0.000    0.000    0.000 csr.py:183(_swap)
+     10/5    0.000    0.000    0.008    0.002 csr.py:188(__getitem__)
+        5    0.000    0.000    0.000    0.000 csr.py:189(asindices)
+        5    0.000    0.000    0.000    0.000 csr.py:197(check_bounds)
+        5    0.000    0.000    0.000    0.000 csr.py:208(extractor)
+        5    0.000    0.000    0.000    0.000 csr.py:265(csr_matmat_pass2)
+        1    0.000    0.000    0.000    0.000 csr.py:315(csr_matvec)
+        5    0.000    0.000    0.004    0.001 csr.py:363(_get_submatrix)
+       10    0.000    0.000    0.000    0.000 csr.py:368(process_slice)
+       10    0.000    0.000    0.000    0.000 csr.py:391(check_bounds)
+       10    0.000    0.000    0.008    0.001 csr.py:586(csr_sort_indices)
+        2    0.000    0.000    0.000    0.000 csr.py:626(csr_sum_duplicates)
+        5    0.000    0.000    0.000    0.000 csr.py:646(get_csr_submatrix)
+       10    0.000    0.000    0.000    0.000 csr.py:73(expandptr)
+        5    0.000    0.000    0.000    0.000 csr.py:77(csr_matmat_pass1)
+       12    0.000    0.000    0.000    0.000 csr.py:88(csr_has_sorted_indices)
+       68    0.000    0.000    0.000    0.000 data.py:22(__init__)
+       40    0.000    0.000    0.000    0.000 data.py:25(_get_dtype)
+    11868    0.248    0.000  815.952    0.069 decoder.py:361(decode)
+    11868  815.484    0.069  815.484    0.069 decoder.py:372(raw_decode)
+       10    1.992    0.199    4.012    0.401 dict_vectorizer.py:130(_transform)
+        5    0.000    0.000    2.732    0.546 dict_vectorizer.py:206(fit_transform)
+        5    0.000    0.000    1.280    0.256 dict_vectorizer.py:267(transform)
+        5    0.000    0.000    0.000    0.000 dict_vectorizer.py:306(get_feature_names)
+        5    0.000    0.000    0.000    0.000 dict_vectorizer.py:89(__init__)
+        1    0.000    0.000    0.000    0.000 extmath.py:171(safe_sparse_dot)
+    24724    0.084    0.000    0.136    0.000 extract_data.py:162(is_note_doc)
+      883    0.000    0.000    0.000    0.000 extract_data.py:165(get_date_key)
+     6387    0.148    0.000    0.976    0.000 extract_data.py:6(get_operation_date)
+      906    1.028    0.001    8.400    0.009 extract_data.py:82(get_ef_values)
+       13    0.000    0.000    0.004    0.000 fromnumeric.py:1281(ravel)
+       13    0.000    0.000    0.000    0.000 fromnumeric.py:1452(shape)
+        4    0.000    0.000    0.000    0.000 fromnumeric.py:1621(sum)
+        6    0.000    0.000    0.000    0.000 fromnumeric.py:1762(any)
+        2    0.000    0.000    0.004    0.002 fromnumeric.py:1842(all)
+        5    0.000    0.000    0.000    0.000 fromnumeric.py:1915(cumsum)
+      528    0.000    0.000    0.000    0.000 fromnumeric.py:2449(rank)
+        6    0.000    0.000    0.000    0.000 fromnumeric.py:683(sort)
+        6    0.000    0.000    0.000    0.000 fromnumeric.py:952(searchsorted)
+       10    0.000    0.000    0.000    0.000 function_base.py:417(average)
+       20    0.000    0.000    0.000    0.000 functools.py:17(update_wrapper)
+       14    0.000    0.000    0.000    0.000 functools.py:39(wraps)
+    10962    0.104    0.000    0.392    0.000 genericpath.py:26(isfile)
+        1    0.000    0.000    0.000    0.000 getlimits.py:244(__init__)
+        1    0.000    0.000    0.000    0.000 getlimits.py:269(max)
+        1    0.004    0.004    0.048    0.048 icd9_categories.py:40(get_max_diagnosis_info)
+        4    0.000    0.000    0.000    0.000 icd9_categories.py:42(<lambda>)
+        2    0.048    0.024    0.092    0.046 icd9_categories.py:5(get_diagnosis_categories)
+        1    0.000    0.000    0.096    0.096 icd_transformer.py:16(__init__)
+        1    0.000    0.000    0.000    0.000 icd_transformer.py:20(fit)
+        2    0.000    0.000  378.508  189.254 icd_transformer.py:23(transform)
+      783   40.084    0.051  373.528    0.477 icd_transformer.py:27(get_icd9_vector)
+   317648   27.384    0.000  146.392    0.000 icd_transformer.py:56(get_vector_from_category)
+   952944    8.460    0.000   78.020    0.000 icd_transformer.py:82(<lambda>)
+        1    0.000    0.000    0.792    0.792 icd_transformer.py:85(get_feature_names)
+        3    0.000    0.000    0.004    0.001 icd_transformer.py:96(<lambda>)
+   9428/4    0.532    0.000    0.788    0.197 icd_transformer.py:98(label_vector)
+        1    0.000    0.000    0.000    0.000 label.py:115(fit_transform)
+        6    0.000    0.000    0.000    0.000 label.py:132(transform)
+       10    0.000    0.000    0.000    0.000 label.py:42(_check_numpy_unicode_bug)
+        6    0.000    0.000    0.000    0.000 label.py:94(_check_fitted)
+        3    0.000    0.000    0.000    0.000 label.py:98(fit)
+ 13656152  189.964    0.000  511.696    0.000 language_processing.py:11(parse_m_d_y)
+   105786    0.420    0.000    2.384    0.000 language_processing.py:30(parse_m_y)
+ 13636991   63.184    0.000  576.468    0.000 language_processing.py:48(parse_date)
+    10962    0.668    0.000  805.436    0.073 loader.py:12(get_patient_by_EMPI)
+      906    0.060    0.000   79.368    0.088 loader.py:22(get_data)
+   820836    5.512    0.000    8.816    0.000 loader.py:29(<lambda>)
+        2    0.000    0.000    0.000    0.000 logger.py:23(_squeeze_time)
+        2    0.000    0.000    0.000    0.000 logger.py:39(short_format_time)
+        1    0.000    0.000    0.000    0.000 logistic.py:978(__init__)
+        1    0.000    0.000    1.008    1.008 logistic.py:996(fit)
+        6    0.000    0.000    0.000    0.000 metaestimators.py:30(__get__)
+      6/1    0.000    0.000  546.448  546.448 metaestimators.py:37(<lambda>)
+        9    0.000    0.000    0.000    0.000 multiclass.py:108(<genexpr>)
+        9    0.000    0.000    0.000    0.000 multiclass.py:111(<genexpr>)
+       14    0.000    0.000    0.000    0.000 multiclass.py:121(is_label_indicator_matrix)
+       14    0.000    0.000    0.000    0.000 multiclass.py:170(is_sequence_of_sequences)
+       14    0.000    0.000    0.004    0.000 multiclass.py:233(type_of_target)
+        6    0.000    0.000    0.000    0.000 multiclass.py:28(_unique_multiclass)
+        3    0.000    0.000    0.000    0.000 multiclass.py:53(unique_labels)
+        9    0.000    0.000    0.000    0.000 multiclass.py:88(<genexpr>)
+        6    0.000    0.000    0.000    0.000 numeric.py:136(ones)
+       20    0.000    0.000    0.000    0.000 numeric.py:1581(array_str)
+        5    0.000    0.000    0.000    0.000 numeric.py:1810(isscalar)
+        6    0.000    0.000    0.000    0.000 numeric.py:2320(seterr)
+        6    0.000    0.000    0.000    0.000 numeric.py:2416(geterr)
+        3    0.000    0.000    0.000    0.000 numeric.py:2701(__init__)
+        3    0.000    0.000    0.000    0.000 numeric.py:2705(__enter__)
+        3    0.000    0.000    0.000    0.000 numeric.py:2710(__exit__)
+      286    0.008    0.000    6.184    0.022 numeric.py:392(asarray)
+       31    0.000    0.000    0.004    0.000 numeric.py:462(asanyarray)
+        9    0.000    0.000    0.000    0.000 numerictypes.py:667(issubclass_)
+        9    0.000    0.000    0.000    0.000 numerictypes.py:735(issubdtype)
+        4    0.000    0.000    0.000    0.000 numerictypes.py:948(_can_coerce_all)
+        2    0.000    0.000    0.000    0.000 numerictypes.py:963(find_common_type)
+       14    0.000    0.000    0.000    0.000 parallel.py:108(delayed)
+       14    0.000    0.000    0.000    0.000 parallel.py:124(delayed_function)
+       14    0.000    0.000 1735.052  123.932 parallel.py:137(__init__)
+       14    0.000    0.000    0.000    0.000 parallel.py:142(get)
+        2    0.000    0.000    0.000    0.000 parallel.py:369(__init__)
+       14    0.004    0.000 1735.056  123.933 parallel.py:402(dispatch)
+        2    0.000    0.000    0.000    0.000 parallel.py:450(_print)
+        2    0.000    0.000    0.000    0.000 parallel.py:503(retrieve)
+        2    0.000    0.000 1735.056  867.528 parallel.py:554(__call__)
+       14    0.000    0.000    0.000    0.000 parallel.py:56(_verbosity_filter)
+        6    0.000    0.000    0.000    0.000 pipeline.py:107(_final_estimator)
+      6/1    0.000    0.000 1195.444 1195.444 pipeline.py:113(_pre_transform)
+       18    0.000    0.000    0.000    0.000 pipeline.py:114(<genexpr>)
+        1    0.000    0.000 1196.452 1196.452 pipeline.py:127(fit)
+        5    0.000    0.000  834.140  166.828 pipeline.py:144(fit_transform)
+        1    0.000    0.000  546.448  546.448 pipeline.py:165(predict)
+        5    0.024    0.005  374.840   74.968 pipeline.py:233(transform)
+        7    0.000    0.000  544.320   77.760 pipeline.py:349(_transform_one)
+        7    0.052    0.007 1190.732  170.105 pipeline.py:356(_fit_transform_one)
+        1    0.000    0.000    0.000    0.000 pipeline.py:395(__init__)
+        1    0.040    0.040    0.836    0.836 pipeline.py:400(get_feature_names)
+        1    0.000    0.000 1195.444 1195.444 pipeline.py:431(fit_transform)
+        8    0.000    0.000    0.000    0.000 pipeline.py:447(<genexpr>)
+        4    0.000    0.000    0.000    0.000 pipeline.py:453(<genexpr>)
+        1    0.000    0.000  546.444  546.444 pipeline.py:459(transform)
+        8    0.000    0.000    0.000    0.000 pipeline.py:474(<genexpr>)
+        4    0.000    0.000    0.000    0.000 pipeline.py:476(<genexpr>)
+        1    0.000    0.000    0.000    0.000 pipeline.py:492(_update_transformer_list)
+        6    0.000    0.000    0.000    0.000 pipeline.py:74(__init__)
+        2    0.000    0.000    0.000    0.000 posixpath.py:127(dirname)
+       10    0.000    0.000    0.000    0.000 posixpath.py:139(islink)
+        2    0.000    0.000    0.000    0.000 posixpath.py:336(normpath)
+        2    0.000    0.000    0.000    0.000 posixpath.py:365(abspath)
+        2    0.000    0.000    0.000    0.000 posixpath.py:379(realpath)
+        2    0.000    0.000    0.000    0.000 posixpath.py:387(_joinrealpath)
+        4    0.000    0.000    0.000    0.000 posixpath.py:59(isabs)
+       10    0.000    0.000    0.000    0.000 posixpath.py:68(join)
+        1    0.000    0.000 1838.408 1838.408 profile:0(main())
+        0    0.000             0.000          profile:0(profiler)
+ 13761938   96.116    0.000  256.976    0.000 re.py:139(search)
+    99614    0.684    0.000    2.896    0.000 re.py:169(findall)
+    99614    0.468    0.000    1.280    0.000 re.py:188(compile)
+ 13961166   81.560    0.000  115.692    0.000 re.py:226(_compile)
+        4    0.000    0.000    0.000    0.000 shape_base.py:60(atleast_2d)
+     3921    0.024    0.000    0.036    0.000 six.py:437(iteritems)
+        5    0.000    0.000    0.000    0.000 sputils.py:110(isscalarlike)
+       32    0.000    0.000    0.000    0.000 sputils.py:115(isintlike)
+       49    0.000    0.000    0.000    0.000 sputils.py:131(isshape)
+       37    0.000    0.000    0.000    0.000 sputils.py:146(issequence)
+        5    0.000    0.000    0.000    0.000 sputils.py:156(isdense)
+       10    0.000    0.000    0.000    0.000 sputils.py:171(_unpack_index)
+       10    0.000    0.000    0.000    0.000 sputils.py:196(_check_boolean)
+       15    0.000    0.000    0.004    0.000 sputils.py:24(upcast)
+        1    0.000    0.000    0.000    0.000 sputils.py:63(upcast_char)
+       68    0.000    0.000    0.004    0.000 sputils.py:80(to_native)
+       37    0.000    0.000    0.000    0.000 sputils.py:84(getdtype)
+       20    0.004    0.000    0.008    0.000 sre_compile.py:178(_compile_charset)
+       20    0.000    0.000    0.004    0.000 sre_compile.py:207(_optimize_charset)
+       98    0.000    0.000    0.000    0.000 sre_compile.py:24(_identityfunction)
+        2    0.000    0.000    0.000    0.000 sre_compile.py:258(_mk_bitmap)
+     40/4    0.000    0.000    0.008    0.002 sre_compile.py:32(_compile)
+       20    0.000    0.000    0.000    0.000 sre_compile.py:354(_simple)
+        4    0.000    0.000    0.004    0.001 sre_compile.py:359(_compile_info)
+        8    0.000    0.000    0.000    0.000 sre_compile.py:472(isstring)
+        4    0.000    0.000    0.012    0.003 sre_compile.py:478(_code)
+        4    0.000    0.000    0.020    0.005 sre_compile.py:493(compile)
+       88    0.000    0.000    0.000    0.000 sre_parse.py:126(__len__)
+      174    0.000    0.000    0.000    0.000 sre_parse.py:130(__getitem__)
+       20    0.000    0.000    0.000    0.000 sre_parse.py:134(__setitem__)
+       61    0.000    0.000    0.000    0.000 sre_parse.py:138(append)
+    60/24    0.004    0.000    0.004    0.000 sre_parse.py:140(getwidth)
+        4    0.000    0.000    0.000    0.000 sre_parse.py:178(__init__)
+      245    0.004    0.000    0.004    0.000 sre_parse.py:182(__next)
+      166    0.000    0.000    0.004    0.000 sre_parse.py:195(match)
+      189    0.000    0.000    0.000    0.000 sre_parse.py:201(get)
+       12    0.000    0.000    0.000    0.000 sre_parse.py:205(tell)
+        2    0.000    0.000    0.000    0.000 sre_parse.py:257(_escape)
+     16/4    0.004    0.000    0.008    0.002 sre_parse.py:301(_parse_sub)
+     18/6    0.000    0.000    0.008    0.001 sre_parse.py:379(_parse)
+        4    0.000    0.000    0.000    0.000 sre_parse.py:67(__init__)
+        4    0.000    0.000    0.008    0.002 sre_parse.py:675(parse)
+       12    0.000    0.000    0.000    0.000 sre_parse.py:72(opengroup)
+       12    0.000    0.000    0.000    0.000 sre_parse.py:83(closegroup)
+       40    0.000    0.000    0.000    0.000 sre_parse.py:90(__init__)
+    10972    0.024    0.000    0.024    0.000 stat.py:24(S_IFMT)
+    10962    0.052    0.000    0.076    0.000 stat.py:49(S_ISREG)
+       10    0.000    0.000    0.000    0.000 stat.py:55(S_ISLNK)
+      783    4.124    0.005   82.564    0.105 structured_data_extractor.py:105(get_encounters)
+   217350    0.368    0.000    0.368    0.000 structured_data_extractor.py:118(<lambda>)
+     3915   56.340    0.014  855.680    0.219 structured_data_extractor.py:121(get_labs_before_date)
+      783    4.604    0.006   91.520    0.117 structured_data_extractor.py:26(get_diagnoses)
+        2    0.000    0.000    0.000    0.000 text.py:1192(__init__)
+        2    0.000    0.000    0.000    0.000 text.py:638(__init__)
+        2    0.000    0.000    0.000    0.000 text.py:951(__init__)
+       15    0.000    0.000    0.000    0.000 validation.py:105(_num_samples)
+        2    0.000    0.000    0.000    0.000 validation.py:126(_shape_repr)
+        6    0.000    0.000    0.000    0.000 validation.py:153(<genexpr>)
+        6    0.000    0.000    0.000    0.000 validation.py:160(check_consistent_length)
+        1    0.000    0.000    0.000    0.000 validation.py:177(indexable)
+        2    0.000    0.000    0.000    0.000 validation.py:203(_ensure_sparse_format)
+        2    0.000    0.000    0.004    0.002 validation.py:268(check_array)
+        1    0.000    0.000    0.004    0.004 validation.py:371(check_X_y)
+        3    0.000    0.000    0.000    0.000 validation.py:43(_assert_all_finite)
+       13    0.000    0.000    0.004    0.000 validation.py:459(column_or_1d)
+        2    0.000    0.000    0.000    0.000 validation.py:503(check_random_state)