└── PyCharm March 2018 Webcast.ipynb /PyCharm March 2018 Webcast.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# A Day in the Life (of a Python Data Scientist)\n", 8 | "``@__mharrison__``" 9 | ] 10 | }, 11 | { 12 | "cell_type": "code", 13 | "execution_count": 3, 14 | "metadata": {}, 15 | "outputs": [], 16 | "source": [ 17 | "class Tweet(object):\n", 18 | " def __init__(self, embed_str=None):\n", 19 | " self.embed_str = embed_str\n", 20 | "\n", 21 | " def _repr_html_(self):\n", 22 | " return self.embed_str\n", 23 | "\n", 24 | "s = (\"\"\"\n", 25 | "

In Data Science, 80% of time spent prepare data, 20% of time spent complain about need for prepare data.

— Big Data Borat (@BigDataBorat) February 27, 2013
\n", 26 | "\n", 27 | "\"\"\")" 28 | ] 29 | }, 30 | { 31 | "cell_type": "code", 32 | "execution_count": 4, 33 | "metadata": {}, 34 | "outputs": [ 35 | { 36 | "data": { 37 | "text/html": [ 38 | "\n", 39 | "\"\"\n", 40 | "\n" 42 | ], 43 | "text/plain": [ 44 | "<__main__.Tweet at 0x111ef1a58>" 45 | ] 46 | }, 47 | "execution_count": 4, 48 | "metadata": {}, 49 | "output_type": "execute_result" 50 | } 51 | ], 52 | "source": [ 53 | "Tweet(\"\"\"\n", 54 | "\"\"\n", 55 | "\n", 57 | "\"\"\")" 58 | ] 59 | }, 60 | { 61 | "cell_type": "code", 62 | "execution_count": 5, 63 | "metadata": {}, 64 | "outputs": [ 65 | { 66 | "data": { 67 | "text/html": [ 68 | "\n", 69 | "

In Data Science, 80% of time spent prepare data, 20% of time spent complain about need for prepare data.

— Big Data Borat (@BigDataBorat) February 27, 2013
\n", 70 | "\n" 71 | ], 72 | "text/plain": [ 73 | "<__main__.Tweet at 0x111ef1748>" 74 | ] 75 | }, 76 | "execution_count": 5, 77 | "metadata": {}, 78 | "output_type": "execute_result" 79 | } 80 | ], 81 | "source": [ 82 | "Tweet(s)" 83 | ] 84 | }, 85 | { 86 | "cell_type": "code", 87 | "execution_count": 6, 88 | "metadata": {}, 89 | "outputs": [ 90 | { 91 | "name": "stderr", 92 | "output_type": "stream", 93 | "text": [ 94 | "/Users/matt/.env/36/lib/python3.6/site-packages/sklearn/cross_validation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.\n", 95 | " \"This module will be removed in 0.20.\", DeprecationWarning)\n" 96 | ] 97 | } 98 | ], 99 | "source": [ 100 | "%matplotlib inline\n", 101 | "import matplotlib.pyplot as plt\n", 102 | "import pandas as pd\n", 103 | "from sklearn import ensemble, model_selection, preprocessing, tree\n", 104 | "from yellowbrick.classifier import ROCAUC\n", 105 | "from yellowbrick.classifier import ClassificationReport, ConfusionMatrix" 106 | ] 107 | }, 108 | { 109 | "cell_type": "markdown", 110 | "metadata": {}, 111 | "source": [ 112 | "https://www.kaggle.com/mczielinski/bitcoin-historical-data" 113 | ] 114 | }, 115 | { 116 | "cell_type": "code", 117 | "execution_count": 15, 118 | "metadata": {}, 119 | "outputs": [ 120 | { 121 | "name": "stdout", 122 | "output_type": "stream", 123 | "text": [ 124 | "CPU times: user 2.47 s, sys: 333 ms, total: 2.81 s\n", 125 | "Wall time: 3.19 s\n" 126 | ] 127 | } 128 | ], 129 | "source": [ 130 | "%%time\n", 131 | "bit_df = pd.read_csv('../ORA-ML-Class-Reg/data/coinbaseUSD_1-min_data_2014-12-01_to_2018-01-08.csv')\n", 132 | "bit_df['date'] = pd.to_datetime(bit_df.Timestamp, unit='s')" 133 | ] 134 | }, 135 | { 136 | "cell_type": "code", 137 | "execution_count": 25, 138 | "metadata": {}, 139 | "outputs": [ 140 | { 141 | "name": "stdout", 142 | "output_type": "stream", 143 | "text": [ 144 | "CPU times: user 2.64 s, sys: 513 ms, total: 3.16 s\n", 145 | "Wall time: 3.87 s\n" 146 | ] 147 | } 148 | ], 149 | "source": [ 150 | "%%time\n", 151 | "bit_df = pd.read_csv('../ORA-ML-Class-Reg/data/coinbaseUSD_1-min_data_2014-12-01_to_2018-01-08.csv')\n", 152 | "bit_df['date'] = pd.to_datetime(bit_df.Timestamp, unit='s')\n", 153 | "bit_df = (\n", 154 | " bit_df.set_index('date')\n", 155 | " .rename(columns={'Open':'open', 'High': 'hi', 'Low': 'lo', \n", 156 | " 'Close': 'close', 'Volume_(BTC)': 'vol_btc',\n", 157 | " 'Volume_(Currency)': 'vol_cur', \n", 158 | " 'Weighted_Price': 'wp', 'Timestamp': 'ts'})\n", 159 | " .resample('d')\n", 160 | " .agg({'open': 'first', 'hi': 'mean', \n", 161 | " 'lo': 'mean', 'close': 'last', 'vol_btc': 'sum',\n", 162 | " 'vol_cur': 'sum', 'wp': 'mean', 'ts': 'min'})\n", 163 | " .iloc[-1000:]\n", 164 | " .assign(buy = lambda x: (x.close.shift(-1) > x.close).astype(int))\n", 165 | " .iloc[:-1]\n", 166 | " \n", 167 | ")\n" 168 | ] 169 | }, 170 | { 171 | "cell_type": "code", 172 | "execution_count": 23, 173 | "metadata": {}, 174 | "outputs": [ 175 | { 176 | "name": "stdout", 177 | "output_type": "stream", 178 | "text": [ 179 | "['Close', 'High', 'Low', 'Open', 'T', 'Timestamp', 'Weighted_Price', '_AXIS_ALIASES', '_AXIS_IALIASES', '_AXIS_LEN', '_AXIS_NAMES', '_AXIS_NUMBERS', '_AXIS_ORDERS', '_AXIS_REVERSED', '_AXIS_SLICEMAP', '__abs__', '__add__', '__and__', '__array__', '__array_wrap__', '__bool__', '__bytes__', '__class__', '__contains__', '__copy__', '__deepcopy__', '__delattr__', '__delitem__', '__dict__', '__dir__', '__div__', '__doc__', '__eq__', '__finalize__', '__floordiv__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__iand__', '__ifloordiv__', '__imod__', '__imul__', '__init__', '__init_subclass__', '__invert__', '__ior__', '__ipow__', '__isub__', '__iter__', '__itruediv__', '__ixor__', '__le__', '__len__', '__lt__', '__mod__', '__module__', '__mul__', '__ne__', '__neg__', '__new__', '__nonzero__', '__or__', '__pow__', '__radd__', '__rand__', '__rdiv__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rmod__', '__rmul__', '__ror__', '__round__', '__rpow__', '__rsub__', '__rtruediv__', '__rxor__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__truediv__', '__unicode__', '__weakref__', '__xor__', '_accessors', '_add_numeric_operations', '_add_series_only_operations', '_add_series_or_dataframe_operations', '_agg_by_level', '_agg_doc', '_aggregate', '_aggregate_multiple_funcs', '_align_frame', '_align_series', '_apply_broadcast', '_apply_empty_result', '_apply_raw', '_apply_standard', '_at', '_box_col_values', '_box_item_values', '_builtin_table', '_check_inplace_setting', '_check_is_chained_assignment_possible', '_check_percentile', '_check_setitem_copy', '_clear_item_cache', '_clip_with_one_bound', '_clip_with_scalar', '_combine_const', '_combine_frame', '_combine_match_columns', '_combine_match_index', '_combine_series', '_combine_series_infer', '_compare_frame', '_compare_frame_evaluate', '_consolidate', '_consolidate_inplace', '_construct_axes_dict', '_construct_axes_dict_for_slice', '_construct_axes_dict_from', '_construct_axes_from_arguments', '_constructor', '_constructor_expanddim', '_constructor_sliced', '_convert', '_count_level', '_create_indexer', '_cython_table', '_deprecations', '_dir_additions', '_dir_deletions', '_drop_axis', '_ensure_valid_index', '_expand_axes', '_flex_compare_frame', '_from_arrays', '_from_axes', '_get_agg_axis', '_get_axis', '_get_axis_name', '_get_axis_number', '_get_axis_resolvers', '_get_block_manager_axis', '_get_bool_data', '_get_cacher', '_get_index_resolvers', '_get_item_cache', '_get_numeric_data', '_get_valid_indices', '_get_value', '_get_values', '_getitem_array', '_getitem_column', '_getitem_frame', '_getitem_multilevel', '_getitem_slice', '_gotitem', '_iat', '_iget_item_cache', '_iloc', '_indexed_same', '_info_axis', '_info_axis_name', '_info_axis_number', '_info_repr', '_init_dict', '_init_mgr', '_init_ndarray', '_internal_names', '_internal_names_set', '_is_builtin_func', '_is_cached', '_is_cython_func', '_is_datelike_mixed_type', '_is_mixed_type', '_is_numeric_mixed_type', '_is_view', '_ix', '_ixs', '_join_compat', '_loc', '_maybe_cache_changed', '_maybe_update_cacher', '_metadata', '_needs_reindex_multi', '_obj_with_exclusions', '_protect_consolidate', '_reduce', '_reindex_axes', '_reindex_axis', '_reindex_columns', '_reindex_index', '_reindex_multi', '_reindex_with_indexers', '_repr_data_resource_', '_repr_fits_horizontal_', '_repr_fits_vertical_', '_repr_html_', '_repr_latex_', '_reset_cache', '_reset_cacher', '_sanitize_column', '_selected_obj', '_selection', '_selection_list', '_selection_name', '_series', '_set_as_cached', '_set_axis', '_set_axis_name', '_set_is_copy', '_set_item', '_set_value', '_setitem_array', '_setitem_frame', '_setitem_slice', '_setup_axes', '_shallow_copy', '_slice', '_stat_axis', '_stat_axis_name', '_stat_axis_number', '_take', '_to_dict_of_blocks', '_try_aggregate_string_function', '_typ', '_unpickle_frame_compat', '_unpickle_matrix_compat', '_update_inplace', '_validate_dtype', '_values', '_where', '_xs', 'abs', 'add', 'add_prefix', 'add_suffix', 'agg', 'aggregate', 'align', 'all', 'any', 'append', 'apply', 'applymap', 'as_matrix', 'asfreq', 'asof', 'assign', 'astype', 'at', 'at_time', 'axes', 'between_time', 'bfill', 'bool', 'boxplot', 'clip', 'clip_lower', 'clip_upper', 'columns', 'combine', 'combine_first', 'compound', 'copy', 'corr', 'corrwith', 'count', 'cov', 'cummax', 'cummin', 'cumprod', 'cumsum', 'date', 'describe', 'diff', 'div', 'divide', 'dot', 'drop', 'drop_duplicates', 'dropna', 'dtypes', 'duplicated', 'empty', 'eq', 'equals', 'eval', 'ewm', 'expanding', 'ffill', 'fillna', 'filter', 'first', 'first_valid_index', 'floordiv', 'from_dict', 'from_items', 'from_records', 'ftypes', 'ge', 'get', 'get_dtype_counts', 'get_ftype_counts', 'get_values', 'groupby', 'gt', 'head', 'hist', 'iat', 'idxmax', 'idxmin', 'iloc', 'index', 'infer_objects', 'info', 'insert', 'interpolate', 'is_copy', 'isin', 'isna', 'isnull', 'items', 'iteritems', 'iterrows', 'itertuples', 'ix', 'join', 'keys', 'kurt', 'kurtosis', 'last', 'last_valid_index', 'le', 'loc', 'lookup', 'lt', 'mad', 'mask', 'max', 'mean', 'median', 'melt', 'memory_usage', 'merge', 'min', 'mod', 'mode', 'mul', 'multiply', 'ndim', 'ne', 'nlargest', 'notna', 'notnull', 'nsmallest', 'nunique', 'pct_change', 'pipe', 'pivot', 'pivot_table', 'plot', 'pop', 'pow', 'prod', 'product', 'quantile', 'query', 'radd', 'rank', 'rdiv', 'reindex', 'reindex_axis', 'reindex_like', 'rename', 'rename_axis', 'reorder_levels', 'replace', 'resample', 'reset_index', 'rfloordiv', 'rmod', 'rmul', 'rolling', 'round', 'rpow', 'rsub', 'rtruediv', 'sample', 'select', 'select_dtypes', 'sem', 'set_axis', 'set_index', 'shape', 'shift', 'size', 'skew', 'slice_shift', 'sort_index', 'sort_values', 'squeeze', 'stack', 'std', 'style', 'sub', 'subtract', 'sum', 'swapaxes', 'swaplevel', 'tail', 'take', 'to_clipboard', 'to_csv', 'to_dense', 'to_dict', 'to_excel', 'to_feather', 'to_gbq', 'to_hdf', 'to_html', 'to_json', 'to_latex', 'to_msgpack', 'to_panel', 'to_parquet', 'to_period', 'to_pickle', 'to_records', 'to_sparse', 'to_sql', 'to_stata', 'to_string', 'to_timestamp', 'to_xarray', 'transform', 'transpose', 'truediv', 'truncate', 'tshift', 'tz_convert', 'tz_localize', 'unstack', 'update', 'values', 'var', 'where', 'xs']\n" 180 | ] 181 | } 182 | ], 183 | "source": [ 184 | "print(dir(bit_df))" 185 | ] 186 | }, 187 | { 188 | "cell_type": "code", 189 | "execution_count": null, 190 | "metadata": {}, 191 | "outputs": [], 192 | "source": [] 193 | }, 194 | { 195 | "cell_type": "code", 196 | "execution_count": 8, 197 | "metadata": { 198 | "scrolled": true 199 | }, 200 | "outputs": [ 201 | { 202 | "data": { 203 | "text/html": [ 204 | "
\n", 205 | "\n", 218 | "\n", 219 | " \n", 220 | " \n", 221 | " \n", 222 | " \n", 223 | " \n", 224 | " \n", 225 | " \n", 226 | " \n", 227 | " \n", 228 | " \n", 229 | " \n", 230 | " \n", 231 | " \n", 232 | " \n", 233 | " \n", 234 | " \n", 235 | " \n", 236 | " \n", 237 | " \n", 238 | " \n", 239 | " \n", 240 | " \n", 241 | " \n", 242 | " \n", 243 | " \n", 244 | " \n", 245 | " \n", 246 | " \n", 247 | " \n", 248 | " \n", 249 | " \n", 250 | " \n", 251 | " \n", 252 | " \n", 253 | " \n", 254 | " \n", 255 | " \n", 256 | " \n", 257 | " \n", 258 | " \n", 259 | " \n", 260 | " \n", 261 | " \n", 262 | " \n", 263 | " \n", 264 | " \n", 265 | " \n", 266 | " \n", 267 | " \n", 268 | " \n", 269 | " \n", 270 | " \n", 271 | " \n", 272 | " \n", 273 | " \n", 274 | " \n", 275 | " \n", 276 | " \n", 277 | " \n", 278 | " \n", 279 | " \n", 280 | " \n", 281 | " \n", 282 | " \n", 283 | " \n", 284 | " \n", 285 | " \n", 286 | " \n", 287 | " \n", 288 | " \n", 289 | " \n", 290 | " \n", 291 | " \n", 292 | " \n", 293 | " \n", 294 | " \n", 295 | " \n", 296 | " \n", 297 | " \n", 298 | " \n", 299 | " \n", 300 | " \n", 301 | " \n", 302 | " \n", 303 | " \n", 304 | " \n", 305 | " \n", 306 | " \n", 307 | " \n", 308 | " \n", 309 | " \n", 310 | " \n", 311 | " \n", 312 | " \n", 313 | " \n", 314 | " \n", 315 | " \n", 316 | " \n", 317 | " \n", 318 | " \n", 319 | " \n", 320 | " \n", 321 | " \n", 322 | " \n", 323 | " \n", 324 | " \n", 325 | " \n", 326 | " \n", 327 | " \n", 328 | " \n", 329 | " \n", 330 | " \n", 331 | " \n", 332 | " \n", 333 | " \n", 334 | " \n", 335 | " \n", 336 | " \n", 337 | " \n", 338 | " \n", 339 | " \n", 340 | " \n", 341 | " \n", 342 | " \n", 343 | " \n", 344 | " \n", 345 | " \n", 346 | " \n", 347 | " \n", 348 | " \n", 349 | " \n", 350 | " \n", 351 | " \n", 352 | " \n", 353 | " \n", 354 | " \n", 355 | " \n", 356 | " \n", 357 | " \n", 358 | " \n", 359 | " \n", 360 | " \n", 361 | " \n", 362 | " \n", 363 | " \n", 364 | " \n", 365 | " \n", 366 | " \n", 367 | " \n", 368 | " \n", 369 | " \n", 370 | " \n", 371 | " \n", 372 | " \n", 373 | " \n", 374 | " \n", 375 | " \n", 376 | " \n", 377 | " \n", 378 | " \n", 379 | " \n", 380 | " \n", 381 | " \n", 382 | " \n", 383 | " \n", 384 | " \n", 385 | " \n", 386 | " \n", 387 | " \n", 388 | " \n", 389 | " \n", 390 | " \n", 391 | " \n", 392 | " \n", 393 | " \n", 394 | " \n", 395 | " \n", 396 | " \n", 397 | " \n", 398 | " \n", 399 | " \n", 400 | " \n", 401 | " \n", 402 | " \n", 403 | " \n", 404 | " \n", 405 | " \n", 406 | " \n", 407 | " \n", 408 | " \n", 409 | " \n", 410 | " \n", 411 | " \n", 412 | " \n", 413 | " \n", 414 | " \n", 415 | " \n", 416 | " \n", 417 | " \n", 418 | " \n", 419 | " \n", 420 | " \n", 421 | " \n", 422 | " \n", 423 | " \n", 424 | " \n", 425 | " \n", 426 | " \n", 427 | " \n", 428 | " \n", 429 | " \n", 430 | " \n", 431 | " \n", 432 | " \n", 433 | " \n", 434 | " \n", 435 | " \n", 436 | " \n", 437 | " \n", 438 | " \n", 439 | " \n", 440 | " \n", 441 | " \n", 442 | " \n", 443 | " \n", 444 | " \n", 445 | " \n", 446 | " \n", 447 | " \n", 448 | " \n", 449 | " \n", 450 | " \n", 451 | " \n", 452 | " \n", 453 | " \n", 454 | " \n", 455 | " \n", 456 | " \n", 457 | " \n", 458 | " \n", 459 | " \n", 460 | " \n", 461 | " \n", 462 | " \n", 463 | " \n", 464 | " \n", 465 | " \n", 466 | " \n", 467 | " \n", 468 | " \n", 469 | " \n", 470 | " \n", 471 | " \n", 472 | " \n", 473 | " \n", 474 | " \n", 475 | " \n", 476 | " \n", 477 | " \n", 478 | " \n", 479 | " \n", 480 | " \n", 481 | " \n", 482 | " \n", 483 | " \n", 484 | " \n", 485 | " \n", 486 | " \n", 487 | " \n", 488 | " \n", 489 | " \n", 490 | " \n", 491 | " \n", 492 | " \n", 493 | " \n", 494 | " \n", 495 | " \n", 496 | " \n", 497 | " \n", 498 | " \n", 499 | " \n", 500 | " \n", 501 | " \n", 502 | " \n", 503 | " \n", 504 | " \n", 505 | " \n", 506 | " \n", 507 | " \n", 508 | " \n", 509 | " \n", 510 | " \n", 511 | " \n", 512 | " \n", 513 | " \n", 514 | " \n", 515 | " \n", 516 | " \n", 517 | " \n", 518 | " \n", 519 | " \n", 520 | " \n", 521 | " \n", 522 | " \n", 523 | " \n", 524 | " \n", 525 | " \n", 526 | " \n", 527 | " \n", 528 | " \n", 529 | " \n", 530 | " \n", 531 | " \n", 532 | " \n", 533 | " \n", 534 | " \n", 535 | " \n", 536 | " \n", 537 | " \n", 538 | " \n", 539 | " \n", 540 | " \n", 541 | " \n", 542 | " \n", 543 | " \n", 544 | " \n", 545 | " \n", 546 | " \n", 547 | " \n", 548 | " \n", 549 | " \n", 550 | " \n", 551 | " \n", 552 | " \n", 553 | " \n", 554 | " \n", 555 | " \n", 556 | " \n", 557 | " \n", 558 | " \n", 559 | " \n", 560 | " \n", 561 | " \n", 562 | " \n", 563 | " \n", 564 | " \n", 565 | " \n", 566 | " \n", 567 | " \n", 568 | " \n", 569 | " \n", 570 | " \n", 571 | " \n", 572 | " \n", 573 | " \n", 574 | " \n", 575 | " \n", 576 | " \n", 577 | " \n", 578 | " \n", 579 | " \n", 580 | " \n", 581 | " \n", 582 | " \n", 583 | " \n", 584 | " \n", 585 | " \n", 586 | " \n", 587 | " \n", 588 | " \n", 589 | " \n", 590 | " \n", 591 | " \n", 592 | " \n", 593 | " \n", 594 | " \n", 595 | " \n", 596 | " \n", 597 | " \n", 598 | " \n", 599 | " \n", 600 | " \n", 601 | " \n", 602 | " \n", 603 | " \n", 604 | " \n", 605 | " \n", 606 | " \n", 607 | " \n", 608 | " \n", 609 | " \n", 610 | " \n", 611 | " \n", 612 | " \n", 613 | " \n", 614 | " \n", 615 | " \n", 616 | " \n", 617 | " \n", 618 | " \n", 619 | " \n", 620 | " \n", 621 | " \n", 622 | " \n", 623 | " \n", 624 | " \n", 625 | " \n", 626 | " \n", 627 | " \n", 628 | " \n", 629 | " \n", 630 | " \n", 631 | " \n", 632 | " \n", 633 | " \n", 634 | " \n", 635 | " \n", 636 | " \n", 637 | " \n", 638 | " \n", 639 | " \n", 640 | " \n", 641 | " \n", 642 | " \n", 643 | " \n", 644 | " \n", 645 | " \n", 646 | " \n", 647 | " \n", 648 | " \n", 649 | " \n", 650 | " \n", 651 | " \n", 652 | " \n", 653 | " \n", 654 | " \n", 655 | " \n", 656 | " \n", 657 | " \n", 658 | " \n", 659 | " \n", 660 | " \n", 661 | " \n", 662 | " \n", 663 | " \n", 664 | " \n", 665 | " \n", 666 | " \n", 667 | " \n", 668 | " \n", 669 | " \n", 670 | " \n", 671 | " \n", 672 | " \n", 673 | " \n", 674 | " \n", 675 | " \n", 676 | " \n", 677 | " \n", 678 | " \n", 679 | " \n", 680 | " \n", 681 | " \n", 682 | " \n", 683 | " \n", 684 | " \n", 685 | " \n", 686 | " \n", 687 | " \n", 688 | " \n", 689 | " \n", 690 | " \n", 691 | " \n", 692 | " \n", 693 | " \n", 694 | " \n", 695 | " \n", 696 | " \n", 697 | " \n", 698 | " \n", 699 | " \n", 700 | " \n", 701 | " \n", 702 | " \n", 703 | " \n", 704 | " \n", 705 | " \n", 706 | " \n", 707 | " \n", 708 | " \n", 709 | " \n", 710 | " \n", 711 | " \n", 712 | " \n", 713 | " \n", 714 | " \n", 715 | " \n", 716 | " \n", 717 | " \n", 718 | " \n", 719 | " \n", 720 | " \n", 721 | " \n", 722 | " \n", 723 | " \n", 724 | " \n", 725 | " \n", 726 | " \n", 727 | " \n", 728 | " \n", 729 | " \n", 730 | " \n", 731 | " \n", 732 | " \n", 733 | " \n", 734 | " \n", 735 | " \n", 736 | " \n", 737 | " \n", 738 | " \n", 739 | " \n", 740 | " \n", 741 | " \n", 742 | " \n", 743 | " \n", 744 | " \n", 745 | " \n", 746 | " \n", 747 | " \n", 748 | " \n", 749 | " \n", 750 | " \n", 751 | " \n", 752 | " \n", 753 | " \n", 754 | " \n", 755 | " \n", 756 | " \n", 757 | " \n", 758 | " \n", 759 | " \n", 760 | " \n", 761 | " \n", 762 | " \n", 763 | " \n", 764 | " \n", 765 | " \n", 766 | " \n", 767 | " \n", 768 | " \n", 769 | " \n", 770 | " \n", 771 | " \n", 772 | " \n", 773 | " \n", 774 | " \n", 775 | " \n", 776 | " \n", 777 | " \n", 778 | " \n", 779 | " \n", 780 | " \n", 781 | " \n", 782 | " \n", 783 | " \n", 784 | " \n", 785 | " \n", 786 | " \n", 787 | " \n", 788 | " \n", 789 | " \n", 790 | " \n", 791 | " \n", 792 | " \n", 793 | " \n", 794 | " \n", 795 | " \n", 796 | " \n", 797 | " \n", 798 | " \n", 799 | " \n", 800 | " \n", 801 | " \n", 802 | " \n", 803 | " \n", 804 | " \n", 805 | " \n", 806 | " \n", 807 | " \n", 808 | " \n", 809 | " \n", 810 | " \n", 811 | " \n", 812 | " \n", 813 | " \n", 814 | " \n", 815 | " \n", 816 | " \n", 817 | " \n", 818 | " \n", 819 | " \n", 820 | " \n", 821 | " \n", 822 | " \n", 823 | " \n", 824 | " \n", 825 | " \n", 826 | " \n", 827 | " \n", 828 | " \n", 829 | " \n", 830 | " \n", 831 | " \n", 832 | " \n", 833 | " \n", 834 | " \n", 835 | " \n", 836 | " \n", 837 | " \n", 838 | " \n", 839 | " \n", 840 | " \n", 841 | " \n", 842 | " \n", 843 | " \n", 844 | " \n", 845 | " \n", 846 | " \n", 847 | " \n", 848 | " \n", 849 | " \n", 850 | " \n", 851 | " \n", 852 | " \n", 853 | " \n", 854 | " \n", 855 | " \n", 856 | " \n", 857 | " \n", 858 | " \n", 859 | " \n", 860 | " \n", 861 | " \n", 862 | " \n", 863 | " \n", 864 | " \n", 865 | " \n", 866 | " \n", 867 | " \n", 868 | " \n", 869 | " \n", 870 | " \n", 871 | " \n", 872 | " \n", 873 | " \n", 874 | " \n", 875 | " \n", 876 | " \n", 877 | " \n", 878 | " \n", 879 | " \n", 880 | " \n", 881 | " \n", 882 | " \n", 883 | " \n", 884 | " \n", 885 | " \n", 886 | " \n", 887 | " \n", 888 | " \n", 889 | " \n", 890 | " \n", 891 | " \n", 892 | " \n", 893 | " \n", 894 | " \n", 895 | " \n", 896 | " \n", 897 | " \n", 898 | " \n", 899 | " \n", 900 | " \n", 901 | " \n", 902 | " \n", 903 | " \n", 904 | " \n", 905 | "
TimestampOpenHighLowCloseVolume_(BTC)Volume_(Currency)Weighted_Price
01417411980300.00300.00300.00300.000.0100003.000000300.000000
11417412040300.00300.00300.00300.000.0100003.000000300.000000
21417412100300.00300.00300.00300.000.0100003.000000300.000000
31417412160300.00300.00300.00300.000.0100003.000000300.000000
41417412220300.00300.00300.00300.000.0100003.000000300.000000
51417412280300.00300.00300.00300.000.0100003.000000300.000000
61417412340300.00300.00300.00300.000.0100003.000000300.000000
71417412400300.00300.00300.00300.000.0100003.000000300.000000
81417412460300.00300.00300.00300.000.0100003.000000300.000000
91417412520300.00300.00300.00300.000.0100003.000000300.000000
101417412580300.00300.00300.00300.000.0100003.000000300.000000
111417412640300.00300.00300.00300.000.0100003.000000300.000000
121417412700300.00300.00300.00300.000.0100003.000000300.000000
131417412760300.00300.00300.00300.000.0100003.000000300.000000
141417412820300.00300.00300.00300.000.0100003.000000300.000000
151417412880300.00300.00300.00300.000.0100003.000000300.000000
161417412940300.00300.00300.00300.000.0100003.000000300.000000
171417413000300.00300.00300.00300.000.0100003.000000300.000000
181417413060300.00300.00300.00300.000.0100003.000000300.000000
191417413120300.00300.00300.00300.000.0100003.000000300.000000
201417413180300.00300.00300.00300.000.0100003.000000300.000000
211417413240300.00300.00300.00300.000.0100003.000000300.000000
221417413300300.00300.00300.00300.000.0100003.000000300.000000
231417413360300.00300.00300.00300.000.0100003.000000300.000000
241417413420300.00300.00300.00300.000.0100003.000000300.000000
251417413480300.00300.00300.00300.000.0100003.000000300.000000
261417413540300.00300.00300.00300.000.0100003.000000300.000000
271417413600300.00300.00300.00300.000.0100003.000000300.000000
281417413660300.00300.00300.00300.000.0100003.000000300.000000
291417413720300.00300.00300.00300.000.0100003.000000300.000000
...........................
1574244151536786016329.7916349.0016329.7916349.002.36401138642.63791816346.218304
1574245151536792016349.0016349.0016329.0016329.004.30327070338.44661916345.349090
1574246151536798016329.0116329.0116300.0016302.858.183248133574.28334016322.892267
1574247151536804016302.8416302.8416279.7416279.747.083056115426.38442016296.128527
1574248151536810016279.7516279.7616266.0616266.068.379655136373.20438016274.321438
1574249151536816016266.0716266.0716266.0616266.064.94314580405.53072016266.068487
1574250151536822016266.0616268.2416266.0616268.141.76419628698.18906716267.005559
1574251151536828016268.1316268.1416268.1316268.141.20730419640.59576316268.139244
1574252151536834016268.1416304.5616268.1416304.566.589334107322.76444016287.347440
1574253151536840016304.5616317.6116304.5516317.606.394264104325.38932016315.464663
1574254151536846016317.6116317.6116317.6016317.612.41422239394.32420316317.605795
1574255151536852016317.6116317.6116270.0016289.238.345635136104.11734016308.420256
1574256151536858016289.2316289.2316269.8916284.014.45180772480.18248816281.069515
1574257151536864016284.0116284.0116275.0016275.003.84628462621.21493016280.962987
1574258151536870016275.0016275.0116268.0016268.014.63897875482.82794016271.435615
1574259151536876016268.0116268.0116268.0016268.003.13772851044.56306116268.002143
1574260151536882016268.0016268.0116232.0416232.0533.674919547471.33526016257.539597
1574261151536888016232.0416232.0516203.6116221.5714.422389233865.89885016215.475284
1574262151536894016221.0116221.0116220.0016220.003.69425159923.36869016220.710150
1574263151536900016220.0116221.0216201.0016221.015.80266794091.32423116215.186394
1574264151536906016221.0116221.0116200.6916221.002.36636638368.60593316214.144086
1574265151536912016221.0116221.0116172.2116174.2219.626989317758.57091016189.878976
1574266151536918016174.2216174.2216174.2116174.217.481674121010.22701016174.217319
1574267151536924016174.2216174.2216174.2116174.227.421392120035.17612016174.213396
1574268151536930016174.2116174.2216174.2116174.213.03010349009.54246816174.218650
1574269151536936016174.2116174.2316174.2116174.237.594119122828.95677016174.221301
1574270151536942016174.2316174.2316174.2116174.2211.902468192513.15094016174.221081
1574271151536948016174.2216174.2216174.2116174.213.86084062446.07368416174.218136
1574272151536954016174.2216174.2216174.2116174.221.17909319070.91450916174.219514
1574273151536960016174.2216174.2316174.2216174.225.40122487360.59322216174.220219
\n", 906 | "

1574274 rows × 8 columns

\n", 907 | "
" 908 | ], 909 | "text/plain": [ 910 | " Timestamp Open High Low Close Volume_(BTC) \\\n", 911 | "0 1417411980 300.00 300.00 300.00 300.00 0.010000 \n", 912 | "1 1417412040 300.00 300.00 300.00 300.00 0.010000 \n", 913 | "2 1417412100 300.00 300.00 300.00 300.00 0.010000 \n", 914 | "3 1417412160 300.00 300.00 300.00 300.00 0.010000 \n", 915 | "4 1417412220 300.00 300.00 300.00 300.00 0.010000 \n", 916 | "5 1417412280 300.00 300.00 300.00 300.00 0.010000 \n", 917 | "6 1417412340 300.00 300.00 300.00 300.00 0.010000 \n", 918 | "7 1417412400 300.00 300.00 300.00 300.00 0.010000 \n", 919 | "8 1417412460 300.00 300.00 300.00 300.00 0.010000 \n", 920 | "9 1417412520 300.00 300.00 300.00 300.00 0.010000 \n", 921 | "10 1417412580 300.00 300.00 300.00 300.00 0.010000 \n", 922 | "11 1417412640 300.00 300.00 300.00 300.00 0.010000 \n", 923 | "12 1417412700 300.00 300.00 300.00 300.00 0.010000 \n", 924 | "13 1417412760 300.00 300.00 300.00 300.00 0.010000 \n", 925 | "14 1417412820 300.00 300.00 300.00 300.00 0.010000 \n", 926 | "15 1417412880 300.00 300.00 300.00 300.00 0.010000 \n", 927 | "16 1417412940 300.00 300.00 300.00 300.00 0.010000 \n", 928 | "17 1417413000 300.00 300.00 300.00 300.00 0.010000 \n", 929 | "18 1417413060 300.00 300.00 300.00 300.00 0.010000 \n", 930 | "19 1417413120 300.00 300.00 300.00 300.00 0.010000 \n", 931 | "20 1417413180 300.00 300.00 300.00 300.00 0.010000 \n", 932 | "21 1417413240 300.00 300.00 300.00 300.00 0.010000 \n", 933 | "22 1417413300 300.00 300.00 300.00 300.00 0.010000 \n", 934 | "23 1417413360 300.00 300.00 300.00 300.00 0.010000 \n", 935 | "24 1417413420 300.00 300.00 300.00 300.00 0.010000 \n", 936 | "25 1417413480 300.00 300.00 300.00 300.00 0.010000 \n", 937 | "26 1417413540 300.00 300.00 300.00 300.00 0.010000 \n", 938 | "27 1417413600 300.00 300.00 300.00 300.00 0.010000 \n", 939 | "28 1417413660 300.00 300.00 300.00 300.00 0.010000 \n", 940 | "29 1417413720 300.00 300.00 300.00 300.00 0.010000 \n", 941 | "... ... ... ... ... ... ... \n", 942 | "1574244 1515367860 16329.79 16349.00 16329.79 16349.00 2.364011 \n", 943 | "1574245 1515367920 16349.00 16349.00 16329.00 16329.00 4.303270 \n", 944 | "1574246 1515367980 16329.01 16329.01 16300.00 16302.85 8.183248 \n", 945 | "1574247 1515368040 16302.84 16302.84 16279.74 16279.74 7.083056 \n", 946 | "1574248 1515368100 16279.75 16279.76 16266.06 16266.06 8.379655 \n", 947 | "1574249 1515368160 16266.07 16266.07 16266.06 16266.06 4.943145 \n", 948 | "1574250 1515368220 16266.06 16268.24 16266.06 16268.14 1.764196 \n", 949 | "1574251 1515368280 16268.13 16268.14 16268.13 16268.14 1.207304 \n", 950 | "1574252 1515368340 16268.14 16304.56 16268.14 16304.56 6.589334 \n", 951 | "1574253 1515368400 16304.56 16317.61 16304.55 16317.60 6.394264 \n", 952 | "1574254 1515368460 16317.61 16317.61 16317.60 16317.61 2.414222 \n", 953 | "1574255 1515368520 16317.61 16317.61 16270.00 16289.23 8.345635 \n", 954 | "1574256 1515368580 16289.23 16289.23 16269.89 16284.01 4.451807 \n", 955 | "1574257 1515368640 16284.01 16284.01 16275.00 16275.00 3.846284 \n", 956 | "1574258 1515368700 16275.00 16275.01 16268.00 16268.01 4.638978 \n", 957 | "1574259 1515368760 16268.01 16268.01 16268.00 16268.00 3.137728 \n", 958 | "1574260 1515368820 16268.00 16268.01 16232.04 16232.05 33.674919 \n", 959 | "1574261 1515368880 16232.04 16232.05 16203.61 16221.57 14.422389 \n", 960 | "1574262 1515368940 16221.01 16221.01 16220.00 16220.00 3.694251 \n", 961 | "1574263 1515369000 16220.01 16221.02 16201.00 16221.01 5.802667 \n", 962 | "1574264 1515369060 16221.01 16221.01 16200.69 16221.00 2.366366 \n", 963 | "1574265 1515369120 16221.01 16221.01 16172.21 16174.22 19.626989 \n", 964 | "1574266 1515369180 16174.22 16174.22 16174.21 16174.21 7.481674 \n", 965 | "1574267 1515369240 16174.22 16174.22 16174.21 16174.22 7.421392 \n", 966 | "1574268 1515369300 16174.21 16174.22 16174.21 16174.21 3.030103 \n", 967 | "1574269 1515369360 16174.21 16174.23 16174.21 16174.23 7.594119 \n", 968 | "1574270 1515369420 16174.23 16174.23 16174.21 16174.22 11.902468 \n", 969 | "1574271 1515369480 16174.22 16174.22 16174.21 16174.21 3.860840 \n", 970 | "1574272 1515369540 16174.22 16174.22 16174.21 16174.22 1.179093 \n", 971 | "1574273 1515369600 16174.22 16174.23 16174.22 16174.22 5.401224 \n", 972 | "\n", 973 | " Volume_(Currency) Weighted_Price \n", 974 | "0 3.000000 300.000000 \n", 975 | "1 3.000000 300.000000 \n", 976 | "2 3.000000 300.000000 \n", 977 | "3 3.000000 300.000000 \n", 978 | "4 3.000000 300.000000 \n", 979 | "5 3.000000 300.000000 \n", 980 | "6 3.000000 300.000000 \n", 981 | "7 3.000000 300.000000 \n", 982 | "8 3.000000 300.000000 \n", 983 | "9 3.000000 300.000000 \n", 984 | "10 3.000000 300.000000 \n", 985 | "11 3.000000 300.000000 \n", 986 | "12 3.000000 300.000000 \n", 987 | "13 3.000000 300.000000 \n", 988 | "14 3.000000 300.000000 \n", 989 | "15 3.000000 300.000000 \n", 990 | "16 3.000000 300.000000 \n", 991 | "17 3.000000 300.000000 \n", 992 | "18 3.000000 300.000000 \n", 993 | "19 3.000000 300.000000 \n", 994 | "20 3.000000 300.000000 \n", 995 | "21 3.000000 300.000000 \n", 996 | "22 3.000000 300.000000 \n", 997 | "23 3.000000 300.000000 \n", 998 | "24 3.000000 300.000000 \n", 999 | "25 3.000000 300.000000 \n", 1000 | "26 3.000000 300.000000 \n", 1001 | "27 3.000000 300.000000 \n", 1002 | "28 3.000000 300.000000 \n", 1003 | "29 3.000000 300.000000 \n", 1004 | "... ... ... \n", 1005 | "1574244 38642.637918 16346.218304 \n", 1006 | "1574245 70338.446619 16345.349090 \n", 1007 | "1574246 133574.283340 16322.892267 \n", 1008 | "1574247 115426.384420 16296.128527 \n", 1009 | "1574248 136373.204380 16274.321438 \n", 1010 | "1574249 80405.530720 16266.068487 \n", 1011 | "1574250 28698.189067 16267.005559 \n", 1012 | "1574251 19640.595763 16268.139244 \n", 1013 | "1574252 107322.764440 16287.347440 \n", 1014 | "1574253 104325.389320 16315.464663 \n", 1015 | "1574254 39394.324203 16317.605795 \n", 1016 | "1574255 136104.117340 16308.420256 \n", 1017 | "1574256 72480.182488 16281.069515 \n", 1018 | "1574257 62621.214930 16280.962987 \n", 1019 | "1574258 75482.827940 16271.435615 \n", 1020 | "1574259 51044.563061 16268.002143 \n", 1021 | "1574260 547471.335260 16257.539597 \n", 1022 | "1574261 233865.898850 16215.475284 \n", 1023 | "1574262 59923.368690 16220.710150 \n", 1024 | "1574263 94091.324231 16215.186394 \n", 1025 | "1574264 38368.605933 16214.144086 \n", 1026 | "1574265 317758.570910 16189.878976 \n", 1027 | "1574266 121010.227010 16174.217319 \n", 1028 | "1574267 120035.176120 16174.213396 \n", 1029 | "1574268 49009.542468 16174.218650 \n", 1030 | "1574269 122828.956770 16174.221301 \n", 1031 | "1574270 192513.150940 16174.221081 \n", 1032 | "1574271 62446.073684 16174.218136 \n", 1033 | "1574272 19070.914509 16174.219514 \n", 1034 | "1574273 87360.593222 16174.220219 \n", 1035 | "\n", 1036 | "[1574274 rows x 8 columns]" 1037 | ] 1038 | }, 1039 | "execution_count": 8, 1040 | "metadata": {}, 1041 | "output_type": "execute_result" 1042 | } 1043 | ], 1044 | "source": [ 1045 | "bit_df" 1046 | ] 1047 | }, 1048 | { 1049 | "cell_type": "code", 1050 | "execution_count": 11, 1051 | "metadata": {}, 1052 | "outputs": [ 1053 | { 1054 | "data": { 1055 | "text/plain": [ 1056 | "Timestamp int64\n", 1057 | "Open float64\n", 1058 | "High float64\n", 1059 | "Low float64\n", 1060 | "Close float64\n", 1061 | "Volume_(BTC) float64\n", 1062 | "Volume_(Currency) float64\n", 1063 | "Weighted_Price float64\n", 1064 | "dtype: object" 1065 | ] 1066 | }, 1067 | "execution_count": 11, 1068 | "metadata": {}, 1069 | "output_type": "execute_result" 1070 | } 1071 | ], 1072 | "source": [ 1073 | "bit_df.dtypes" 1074 | ] 1075 | }, 1076 | { 1077 | "cell_type": "code", 1078 | "execution_count": 12, 1079 | "metadata": {}, 1080 | "outputs": [ 1081 | { 1082 | "data": { 1083 | "text/plain": [ 1084 | "0 2014-12-01 05:33:00\n", 1085 | "1 2014-12-01 05:34:00\n", 1086 | "2 2014-12-01 05:35:00\n", 1087 | "3 2014-12-01 05:36:00\n", 1088 | "4 2014-12-01 05:37:00\n", 1089 | "5 2014-12-01 05:38:00\n", 1090 | "6 2014-12-01 05:39:00\n", 1091 | "7 2014-12-01 05:40:00\n", 1092 | "8 2014-12-01 05:41:00\n", 1093 | "9 2014-12-01 05:42:00\n", 1094 | "10 2014-12-01 05:43:00\n", 1095 | "11 2014-12-01 05:44:00\n", 1096 | "12 2014-12-01 05:45:00\n", 1097 | "13 2014-12-01 05:46:00\n", 1098 | "14 2014-12-01 05:47:00\n", 1099 | "15 2014-12-01 05:48:00\n", 1100 | "16 2014-12-01 05:49:00\n", 1101 | "17 2014-12-01 05:50:00\n", 1102 | "18 2014-12-01 05:51:00\n", 1103 | "19 2014-12-01 05:52:00\n", 1104 | "20 2014-12-01 05:53:00\n", 1105 | "21 2014-12-01 05:54:00\n", 1106 | "22 2014-12-01 05:55:00\n", 1107 | "23 2014-12-01 05:56:00\n", 1108 | "24 2014-12-01 05:57:00\n", 1109 | "25 2014-12-01 05:58:00\n", 1110 | "26 2014-12-01 05:59:00\n", 1111 | "27 2014-12-01 06:00:00\n", 1112 | "28 2014-12-01 06:01:00\n", 1113 | "29 2014-12-01 06:02:00\n", 1114 | " ... \n", 1115 | "1574244 2018-01-07 23:31:00\n", 1116 | "1574245 2018-01-07 23:32:00\n", 1117 | "1574246 2018-01-07 23:33:00\n", 1118 | "1574247 2018-01-07 23:34:00\n", 1119 | "1574248 2018-01-07 23:35:00\n", 1120 | "1574249 2018-01-07 23:36:00\n", 1121 | "1574250 2018-01-07 23:37:00\n", 1122 | "1574251 2018-01-07 23:38:00\n", 1123 | "1574252 2018-01-07 23:39:00\n", 1124 | "1574253 2018-01-07 23:40:00\n", 1125 | "1574254 2018-01-07 23:41:00\n", 1126 | "1574255 2018-01-07 23:42:00\n", 1127 | "1574256 2018-01-07 23:43:00\n", 1128 | "1574257 2018-01-07 23:44:00\n", 1129 | "1574258 2018-01-07 23:45:00\n", 1130 | "1574259 2018-01-07 23:46:00\n", 1131 | "1574260 2018-01-07 23:47:00\n", 1132 | "1574261 2018-01-07 23:48:00\n", 1133 | "1574262 2018-01-07 23:49:00\n", 1134 | "1574263 2018-01-07 23:50:00\n", 1135 | "1574264 2018-01-07 23:51:00\n", 1136 | "1574265 2018-01-07 23:52:00\n", 1137 | "1574266 2018-01-07 23:53:00\n", 1138 | "1574267 2018-01-07 23:54:00\n", 1139 | "1574268 2018-01-07 23:55:00\n", 1140 | "1574269 2018-01-07 23:56:00\n", 1141 | "1574270 2018-01-07 23:57:00\n", 1142 | "1574271 2018-01-07 23:58:00\n", 1143 | "1574272 2018-01-07 23:59:00\n", 1144 | "1574273 2018-01-08 00:00:00\n", 1145 | "Name: Timestamp, Length: 1574274, dtype: datetime64[ns]" 1146 | ] 1147 | }, 1148 | "execution_count": 12, 1149 | "metadata": {}, 1150 | "output_type": "execute_result" 1151 | } 1152 | ], 1153 | "source": [ 1154 | "pd.to_datetime(bit_df.Timestamp, unit='s')" 1155 | ] 1156 | }, 1157 | { 1158 | "cell_type": "markdown", 1159 | "metadata": {}, 1160 | "source": [ 1161 | "## Random Forest" 1162 | ] 1163 | }, 1164 | { 1165 | "cell_type": "code", 1166 | "execution_count": 33, 1167 | "metadata": {}, 1168 | "outputs": [], 1169 | "source": [ 1170 | "ignore = {'buy'}\n", 1171 | "cols = [c for c in bit_df.columns if c not in ignore]\n", 1172 | "X = bit_df[cols]\n", 1173 | "y = bit_df.buy\n", 1174 | "X_train, X_test, y_train, y_test = model_selection.\\\n", 1175 | " train_test_split(X, y, test_size=.3, random_state=42)\n" 1176 | ] 1177 | }, 1178 | { 1179 | "cell_type": "code", 1180 | "execution_count": 50, 1181 | "metadata": {}, 1182 | "outputs": [ 1183 | { 1184 | "data": { 1185 | "text/plain": [ 1186 | "0.49666666666666665" 1187 | ] 1188 | }, 1189 | "execution_count": 50, 1190 | "metadata": {}, 1191 | "output_type": "execute_result" 1192 | } 1193 | ], 1194 | "source": [ 1195 | "rf1 = ensemble.RandomForestClassifier(random_state=42)\n", 1196 | "rf1.fit(X_train, y_train)\n", 1197 | "rf1.score(X_test, y_test)" 1198 | ] 1199 | }, 1200 | { 1201 | "cell_type": "code", 1202 | "execution_count": 37, 1203 | "metadata": {}, 1204 | "outputs": [ 1205 | { 1206 | "data": { 1207 | "text/plain": [ 1208 | "0.977110157367668" 1209 | ] 1210 | }, 1211 | "execution_count": 37, 1212 | "metadata": {}, 1213 | "output_type": "execute_result" 1214 | } 1215 | ], 1216 | "source": [ 1217 | "rf1.score(X_train, y_train)" 1218 | ] 1219 | }, 1220 | { 1221 | "cell_type": "markdown", 1222 | "metadata": {}, 1223 | "source": [ 1224 | "## ROC Curve" 1225 | ] 1226 | }, 1227 | { 1228 | "cell_type": "code", 1229 | "execution_count": 40, 1230 | "metadata": {}, 1231 | "outputs": [ 1232 | { 1233 | "data": { 1234 | "image/png": "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\n", 1235 | "text/plain": [ 1236 | "" 1237 | ] 1238 | }, 1239 | "metadata": {}, 1240 | "output_type": "display_data" 1241 | } 1242 | ], 1243 | "source": [ 1244 | "# yellowbrick version\n", 1245 | "fig, ax = plt.subplots(figsize=(10, 10))\n", 1246 | "roc_viz = ROCAUC(rf1)\n", 1247 | "roc_viz.score(X_test, y_test)\n", 1248 | "#roc_viz.score(X_train, y_train)\n", 1249 | "\n", 1250 | "roc_viz.poof()" 1251 | ] 1252 | }, 1253 | { 1254 | "cell_type": "code", 1255 | "execution_count": 31, 1256 | "metadata": {}, 1257 | "outputs": [ 1258 | { 1259 | "data": { 1260 | "text/plain": [ 1261 | "date\n", 1262 | "2015-04-15 1\n", 1263 | "2015-04-16 0\n", 1264 | "2015-04-17 1\n", 1265 | "2015-04-18 1\n", 1266 | "2015-04-19 1\n", 1267 | "2015-04-20 1\n", 1268 | "2015-04-21 0\n", 1269 | "2015-04-22 1\n", 1270 | "2015-04-23 0\n", 1271 | "2015-04-24 0\n", 1272 | "2015-04-25 0\n", 1273 | "2015-04-26 1\n", 1274 | "2015-04-27 0\n", 1275 | "2015-04-28 0\n", 1276 | "2015-04-29 1\n", 1277 | "2015-04-30 0\n", 1278 | "2015-05-01 1\n", 1279 | "2015-05-02 1\n", 1280 | "2015-05-03 0\n", 1281 | "2015-05-04 0\n", 1282 | "2015-05-05 0\n", 1283 | "2015-05-06 1\n", 1284 | "2015-05-07 1\n", 1285 | "2015-05-08 0\n", 1286 | "2015-05-09 0\n", 1287 | "2015-05-10 1\n", 1288 | "2015-05-11 0\n", 1289 | "2015-05-12 0\n", 1290 | "2015-05-13 1\n", 1291 | "2015-05-14 1\n", 1292 | " ..\n", 1293 | "2017-12-09 0\n", 1294 | "2017-12-10 1\n", 1295 | "2017-12-11 1\n", 1296 | "2017-12-12 0\n", 1297 | "2017-12-13 1\n", 1298 | "2017-12-14 1\n", 1299 | "2017-12-15 1\n", 1300 | "2017-12-16 0\n", 1301 | "2017-12-17 0\n", 1302 | "2017-12-18 0\n", 1303 | "2017-12-19 0\n", 1304 | "2017-12-20 0\n", 1305 | "2017-12-21 0\n", 1306 | "2017-12-22 1\n", 1307 | "2017-12-23 0\n", 1308 | "2017-12-24 0\n", 1309 | "2017-12-25 1\n", 1310 | "2017-12-26 0\n", 1311 | "2017-12-27 0\n", 1312 | "2017-12-28 1\n", 1313 | "2017-12-29 0\n", 1314 | "2017-12-30 1\n", 1315 | "2017-12-31 0\n", 1316 | "2018-01-01 1\n", 1317 | "2018-01-02 1\n", 1318 | "2018-01-03 1\n", 1319 | "2018-01-04 1\n", 1320 | "2018-01-05 1\n", 1321 | "2018-01-06 0\n", 1322 | "2018-01-07 0\n", 1323 | "Freq: D, Name: buy, Length: 999, dtype: int64" 1324 | ] 1325 | }, 1326 | "execution_count": 31, 1327 | "metadata": {}, 1328 | "output_type": "execute_result" 1329 | } 1330 | ], 1331 | "source": [ 1332 | "\n" 1333 | ] 1334 | }, 1335 | { 1336 | "cell_type": "code", 1337 | "execution_count": null, 1338 | "metadata": {}, 1339 | "outputs": [], 1340 | "source": [] 1341 | } 1342 | ], 1343 | "metadata": { 1344 | "kernelspec": { 1345 | "display_name": "Python 3", 1346 | "language": "python", 1347 | "name": "python3" 1348 | }, 1349 | "language_info": { 1350 | "codemirror_mode": { 1351 | "name": "ipython", 1352 | "version": 3 1353 | }, 1354 | "file_extension": ".py", 1355 | "mimetype": "text/x-python", 1356 | "name": "python", 1357 | "nbconvert_exporter": "python", 1358 | "pygments_lexer": "ipython3", 1359 | "version": "3.6.4" 1360 | } 1361 | }, 1362 | "nbformat": 4, 1363 | "nbformat_minor": 2 1364 | } 1365 | --------------------------------------------------------------------------------