Computación científica y cuaderno de Ipython: ¿Cómo organizar el código?
Estoy usando Ipython Notebook para mi investigación. A medida que mi archivo crece, extraigo constantemente código, cosas como el método de trazado, el método de ajuste, etc.
Creo que necesito una forma de organizar esto. ¿Hay alguna buena manera de hacerlo?
Actualmente, hago esto por:
data/
helpers/
my_notebook.ipynb
import_file.py
Almaceno datos endata/
y extraerhelper method
dentrohelpers/
y dividirlos en archivos comoplot_helper.py
, app_helper.py
etc.
Resumo las importaciones enimport_file.py
,
from IPython.display import display
import numpy as np
import scipy as sp
import pandas as pd
import matplotlib as mpl
from matplotlib import pyplot as plt
import sklearn
import re
Y luego puedo importar todo lo que necesito en.ipynb
en la celda superior como
La estructura se puede ver enhttps://github.com/cqcn1991/Wind-Speed-Analysis
Un problema que tengo ahora es que tengo demasiados submódulos enhelpers/
, y es difícil pensar qué método se debe poner en qué archivo.
Creo que una forma posible es organizarse enpre-processing
, processing
, post-processing
.
ACTUALIZAR:
Mi gran cuaderno de investigación jupyter:https://cdn.rawgit.com/cqcn1991/Wind-Speed-Analysis/master/output_HTML/marham.html
La celda superior esstandard import
+ magic
+ extentions
%matplotlib inline
%load_ext autoreload
%autoreload 2
from __future__ import division
from import_file import *
load_libs()