LukasHedegaard / datasetops

Fluent dataset operations, compatible with your favorite libraries
https://datasetops.readthedocs.io
MIT License
10 stars 1 forks source link

standardize-transform performance #36

Open clegaard opened 4 years ago

clegaard commented 4 years ago

It seems the standardize function adds a significant amount of reads to the underlying dataset. Calling the function on a dataset containing a single element seemingly causes 7 reads to be carried out.

ds_one = ds.take(1)
def foo():
    ds_center = ds_one.standardize(0, axis=1)
    s = ds_center[0]

def bar():

    from sklearn.preprocessing import StandardScaler
    scaler = StandardScaler()
    s = ds[0]
    scaler.fit(s.data)
    scaled = scaler.transform(s.data)
    mu = np.mean(scaled)
    std = np.std(scaled)

def do_profile(func):

    print(f"######### PROFILING {func.__name__} #########")
    pr = cProfile.Profile(subcalls=False)
    pr.enable()
    func()
    pr.disable()
    s = io.StringIO()
    sortby = SortKey.TIME
    ps = pstats.Stats(pr, stream=s).sort_stats(sortby)
    ps.print_stats()
    # return s.getvalue()
    print(f"{s.getvalue()}\n")

do_profile(foo)
do_profile(bar)
######### PROFILING foo #########
         40119 function calls (39755 primitive calls) in 18.561 seconds

   Ordered by: internal time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        7   17.962    2.566   18.073    2.582 {method 'read' of 'pandas._libs.parsers.TextReader' objects}
    94/65    0.102    0.001    0.283    0.004 {built-in method numpy.core._multiarray_umath.implement_array_function}
        7    0.098    0.014    0.098    0.014 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\arraypad.py:86(_pad_simple)
        7    0.097    0.014    0.098    0.014 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1828(_stack_arrays)
      217    0.085    0.000    0.085    0.000 {built-in method numpy.array}
       36    0.036    0.001    0.036    0.001 {method 'reduce' of 'numpy.ufunc' objects}
        7    0.022    0.003    0.023    0.003 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:1864(__init__)
        7    0.018    0.003   18.256    2.608 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:416(_read)
        7    0.018    0.003   18.377    2.625 c:\users\clega\desktop\datasetops\src\datasetops\loaders.py:491(get_data)
        1    0.009    0.009    0.039    0.039 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\nanfunctions.py:1421(nanvar)
        2    0.007    0.003    0.036    0.018 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\nanfunctions.py:68(_replace_nan)
        1    0.006    0.006    0.025    0.025 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\preprocessing\_data.py:780(transform)
        1    0.006    0.006    0.076    0.076 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\utils\extmath.py:710(_incremental_mean_and_var)
     7847    0.005    0.000    0.011    0.000 {built-in method builtins.isinstance}
     4018    0.005    0.000    0.006    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\generic.py:10(_check)
        1    0.005    0.005    5.368    5.368 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:238(item_stats)
        1    0.005    0.005    8.000    8.000 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:1385(make_fn)
        7    0.004    0.001    0.004    0.001 {method 'close' of 'pandas._libs.parsers.TextReader' objects}
     1148    0.003    0.000    0.005    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1708(_is_dtype_type)
     15/7    0.003    0.000   18.405    2.629 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:235(__getitem__)
        1    0.003    0.003    2.729    2.729 c:\users\clega\desktop\datasetops\src\datasetops\scaler.py:62(fit)
        1    0.003    0.003   13.269   13.269 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:648(transform)
        1    0.003    0.003   10.639   10.639 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:1088(wrapped)
        1    0.003    0.003   15.911   15.911 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:854(standardize)
        1    0.002    0.002    0.017    0.017 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:1194(fn)
      812    0.002    0.000    0.004    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1565(is_extension_array_dtype)
      665    0.002    0.000    0.009    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:542(is_categorical_dtype)
     1106    0.002    0.000    0.011    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\base.py:247(is_dtype)
      455    0.002    0.000    0.004    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:775(is_integer_dtype)
    49/21    0.002    0.000    0.012    0.001 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:276(__new__)
      819    0.002    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\dtypes.py:75(find)
      273    0.001    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1401(is_float_dtype)
       56    0.001    0.000    0.001    0.000 {built-in method numpy.empty}
      539    0.001    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:216(<lambda>)
      609    0.001    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:208(<lambda>)
      609    0.001    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:206(classes)
      539    0.001    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:211(classes_and_not_datetimelike)
     6128    0.001    0.000    0.001    0.000 {built-in method builtins.getattr}
       63    0.001    0.000    0.005    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\blocks.py:2981(get_block_type)
    21/14    0.001    0.000    0.018    0.001 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\series.py:183(__init__)
       56    0.001    0.000    0.005    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\construction.py:388(sanitize_array)
       91    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_dtype.py:321(_name_get)
  817/642    0.000    0.000    0.001    0.000 {built-in method builtins.len}
      234    0.000    0.000    0.001    0.000 <frozen importlib._bootstrap>:1009(_handle_fromlist)
      154    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\dtypes.py:1124(is_dtype)
      182    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:506(is_interval_dtype)
      154    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\dtypes.py:917(is_dtype)
      182    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:472(is_period_dtype)
        7    0.000    0.000    0.104    0.015 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1700(form_blocks)
      876    0.000    0.000    0.000    0.000 {built-in method builtins.hasattr}
      119    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:441(is_timedelta64_dtype)
      217    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1844(pandas_dtype)
      105    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:222(is_object_dtype)
        7    0.000    0.000    0.100    0.014 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\arraypad.py:532(pad)
       14    0.000    0.000    0.001    0.000 {pandas._libs.lib.clean_index_list}
      161    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:403(is_datetime64tz_dtype)
      105    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:372(is_datetime64_dtype)
        7    0.000    0.000   18.359    2.623 c:\users\clega\desktop\datasetops\src\datasetops\loaders.py:448(read_single_csv)
     2827    0.000    0.000    0.000    0.000 {built-in method builtins.issubclass}
        7    0.000    0.000   18.074    2.582 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:2035(read)
    69/14    0.000    0.000    0.000    0.000 {built-in method _abc._abc_subclasscheck}
        7    0.000    0.000    0.102    0.015 c:\Users\clega\Desktop\vibration\sandbox.py:25(func_csv)
       98    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:987(is_datetime64_any_dtype)
       84    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:5393(maybe_extract_name)
       49    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\cast.py:1088(maybe_castable)
       56    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1435(is_bool_dtype)
       42    0.000    0.000    0.096    0.002 <__array_function__ internals>:2(concatenate)
      157    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_asarray.py:14(asarray)
       56    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\construction.py:506(_try_cast)
       63    0.000    0.000    0.013    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:5293(ensure_index)
        7    0.000    0.000   18.209    2.601 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:1131(read)
       91    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_dtype.py:307(_name_includes_bit_suffix)
       54    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\numerictypes.py:360(issubdtype)
       63    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:252(is_sparse)
    63/56    0.000    0.000    0.002    0.000 {built-in method builtins.all}
       84    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1672(_get_dtype)
       49    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\common.py:219(asarray_tuplesafe)
        7    0.000    0.000    0.134    0.019 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\construction.py:213(init_dict)
       21    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\urllib\parse.py:361(urlparse)
       35    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\generic.py:5276(__setattr__)
       21    0.000    0.000    0.003    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\blocks.py:3027(make_block)
        7    0.000    0.000    0.100    0.014 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1811(_multi_blockify)
        4    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\sre_parse.py:469(_parse)
      108    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\numerictypes.py:286(issubclass_)
       21    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\blocks.py:118(__init__)
        7    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\range.py:83(__new__)
        3    0.000    0.000    0.027    0.009 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\utils\validation.py:350(check_array)
      131    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\abc.py:137(__instancecheck__)
      119    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\inference.py:358(is_hashable)
        7    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\series.py:3857(_reduce)
        7    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:212(_rebuild_blknos_and_blklocs)
        7    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\arraypad.py:457(_as_pairs)
        7    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\common.py:144(get_filepath_or_buffer)
       42    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:3911(__getitem__)
        7    0.000    0.000    0.023    0.003 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:792(__init__)
       84    0.000    0.000    0.001    0.000 {pandas._libs.lib.is_list_like}
        7    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:939(_clean_options)
       63    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:339(is_categorical)
       42    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1831(_asarray_compat)
       21    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\blocks.py:251(mgr_locs)
        7    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\stride_tricks.py:114(_broadcast_to)
       21    0.000    0.000    0.000    0.000 {pandas._libs.lib.infer_dtype}
        7    0.000    0.000    0.003    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\construction.py:300(_homogenize)
        7    0.000    0.000    0.003    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\missing.py:225(_isna_ndarraylike)
       42    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:830(is_signed_integer_dtype)
        7    0.000    0.000   18.256    2.608 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:530(parser_f)
       14    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\cast.py:1209(maybe_cast_to_datetime)
        7    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\nanops.py:234(_get_values)
        7    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\common.py:40(is_url)
        7    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:122(__init__)
       42    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:887(is_unsigned_integer_dtype)
        7    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:885(_get_options_with_defaults)
       91    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_dtype.py:24(_kind_name)
       14    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:4046(equals)
       21    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\urllib\parse.py:412(urlsplit)
       21    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\series.py:376(_set_axis)
        7    0.000    0.000    0.000
######### PROFILING bar #########
         5890 function calls (5849 primitive calls) in 2.768 seconds

   Ordered by: internal time

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1    2.570    2.570    2.586    2.586 {method 'read' of 'pandas._libs.parsers.TextReader' objects}
       41    0.042    0.001    0.042    0.001 {built-in method numpy.array}
       16    0.038    0.002    0.038    0.002 {method 'reduce' of 'numpy.ufunc' objects}
    27/16    0.021    0.001    0.138    0.009 {built-in method numpy.core._multiarray_umath.implement_array_function}
        1    0.017    0.017    0.025    0.025 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_methods.py:176(_var)
        1    0.014    0.014    0.014    0.014 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\arraypad.py:86(_pad_simple)
        1    0.014    0.014    0.014    0.014 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1828(_stack_arrays)
        1    0.009    0.009    0.038    0.038 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\nanfunctions.py:1421(nanvar)
        2    0.007    0.003    0.036    0.018 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\nanfunctions.py:68(_replace_nan)
        1    0.007    0.007    0.076    0.076 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\utils\extmath.py:710(_incremental_mean_and_var)
        1    0.006    0.006    0.025    0.025 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\preprocessing\_data.py:780(transform)
        1    0.004    0.004    0.004    0.004 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:1864(__init__)
        1    0.003    0.003    2.613    2.613 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:416(_read)
        1    0.003    0.003    2.631    2.631 c:\users\clega\desktop\datasetops\src\datasetops\loaders.py:491(get_data)
        1    0.003    0.003    0.028    0.028 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_methods.py:232(_std)
     1141    0.001    0.000    0.002    0.000 {built-in method builtins.isinstance}
      574    0.001    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\generic.py:10(_check)
        1    0.001    0.001    0.001    0.001 {method 'close' of 'pandas._libs.parsers.TextReader' objects}
      164    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1708(_is_dtype_type)
      116    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1565(is_extension_array_dtype)
      158    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\base.py:247(is_dtype)
       95    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:542(is_categorical_dtype)
       65    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:775(is_integer_dtype)
      117    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\dtypes.py:75(find)
      7/3    0.000    0.000    0.002    0.001 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:276(__new__)
        1    0.000    0.000    2.768    2.768 c:\Users\clega\Desktop\vibration\sandbox.py:80(bar)
        8    0.000    0.000    0.000    0.000 {built-in method numpy.empty}
       39    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1401(is_float_dtype)
       87    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:208(<lambda>)
       77    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:216(<lambda>)
       87    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:206(classes)
        2    0.000    0.000    0.023    0.012 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\utils\validation.py:350(check_array)
       77    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:211(classes_and_not_datetimelike)
      876    0.000    0.000    0.000    0.000 {built-in method builtins.getattr}
        9    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\blocks.py:2981(get_block_type)
        8    0.000    0.000    0.001    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\construction.py:388(sanitize_array)
       13    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_dtype.py:321(_name_get)
       36    0.000    0.000    0.000    0.000 <frozen importlib._bootstrap>:1009(_handle_fromlist)
      144    0.000    0.000    0.000    0.000 {built-in method builtins.hasattr}
      3/2    0.000    0.000    0.002    0.001 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\series.py:183(__init__)
        4    0.000    0.000    0.075    0.019 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\utils\extmath.py:681(_safe_accumulator_op)
       22    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\dtypes.py:1124(is_dtype)
       15    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:222(is_object_dtype)
   108/84    0.000    0.000    0.000    0.000 {built-in method builtins.len}
       22    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\dtypes.py:917(is_dtype)
       26    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:506(is_interval_dtype)
        1    0.000    0.000    2.628    2.628 c:\users\clega\desktop\datasetops\src\datasetops\loaders.py:448(read_single_csv)
       17    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:441(is_timedelta64_dtype)
       26    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:472(is_period_dtype)
        2    0.000    0.000    0.009    0.005 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\utils\validation.py:37(_assert_all_finite)
        1    0.000    0.000    0.015    0.015 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1700(form_blocks)
       31    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1844(pandas_dtype)
        1    0.000    0.000    0.014    0.014 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\arraypad.py:532(pad)
       15    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:372(is_datetime64_dtype)
       23    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:403(is_datetime64tz_dtype)
       11    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\numerictypes.py:360(issubdtype)
        8    0.000    0.000    0.027    0.003 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\fromnumeric.py:70(_wrapreduction)
        6    0.000    0.000    0.014    0.002 <__array_function__ internals>:2(concatenate)
      420    0.000    0.000    0.000    0.000 {built-in method builtins.issubclass}
        1    0.000    0.000    0.015    0.015 c:\Users\clega\Desktop\vibration\sandbox.py:25(func_csv)
        1    0.000    0.000    2.631    2.631 c:\users\clega\desktop\datasetops\src\datasetops\dataset.py:235(__getitem__)
        1    0.000    0.000    0.081    0.081 C:\ProgramData\Miniconda3\lib\site-packages\sklearn\preprocessing\_data.py:671(partial_fit)
        2    0.000    0.000    0.000    0.000 {pandas._libs.lib.clean_index_list}
        8    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_ufunc_config.py:32(seterr)
       22    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\numerictypes.py:286(issubclass_)
        7    0.000    0.000    0.027    0.004 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\fromnumeric.py:2105(sum)
       24    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_asarray.py:14(asarray)
        2    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\nanfunctions.py:183(_divide_by_count)
        1    0.000    0.000    2.586    2.586 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:2035(read)
        7    0.000    0.000    0.027    0.004 <__array_function__ internals>:2(sum)
       14    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:987(is_datetime64_any_dtype)
        6    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1831(_asarray_compat)
       12    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:5393(maybe_extract_name)
        7    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\cast.py:1088(maybe_castable)
        8    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1435(is_bool_dtype)
       13    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_dtype.py:307(_name_includes_bit_suffix)
        8    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_ufunc_config.py:132(geterr)
        9    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:252(is_sparse)
        9    0.000    0.000    0.002    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:5293(ensure_index)
        8    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\construction.py:506(_try_cast)
       21    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\abc.py:137(__instancecheck__)
        7    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\common.py:219(asarray_tuplesafe)
        1    0.000    0.000    0.004    0.004 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\_methods.py:143(_mean)
       12    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\common.py:1672(_get_dtype)
        1    0.000    0.000    0.015    0.015 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:1811(_multi_blockify)
        1    0.000    0.000    2.613    2.613 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:530(parser_f)
        2    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:199(_is_single_block)
        1    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\numpy\lib\arraypad.py:457(_as_pairs)
        5    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\generic.py:5276(__setattr__)
        1    0.000    0.000    0.004    0.004 <__array_function__ internals>:2(mean)
       17    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\dtypes\inference.py:358(is_hashable)
        1    0.000    0.000    2.605    2.605 C:\ProgramData\Miniconda3\lib\site-packages\pandas\io\parsers.py:1131(read)
        1    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:212(_rebuild_blknos_and_blklocs)
        1    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\internals\managers.py:798(as_array)
       21    0.000    0.000    0.000    0.000 {built-in method _abc._abc_instancecheck}
        1    0.000    0.000    0.004    0.004 C:\ProgramData\Miniconda3\lib\site-packages\numpy\core\fromnumeric.py:3244(mean)
       13    0.000    0.000    0.000    0.000 C:\ProgramData\Miniconda3\lib\site-packages\pandas\core\indexes\base.py:615(__len__)
        3    0.000    0.000    0.000    0.000 C:\ProgramData\Min