[IPython-User] using iPython as a way to generate repetitive reports.

Matthias Bussonnier bussonniermatthias@gmail....
Mon Dec 3 02:10:27 CST 2012

Hi zach,

The same mail has been received by the mailing list yesterday and have
received some answers.
If you did not get the answers they shoul be accessible from the ML archive.

Le 3 déc. 2012 04:29, "zach charlop-powers" <zach.charlop.powers@gmail.com>
a écrit :

> I recently posted a question to Stack Overflow about the possibility of
> using iPython to generate reproducible, repetitive reports. (
> http://stackoverflow.com/questions/13614783/programatically-add-cells-to-an-ipython-notebook-for-report-generation)
> Lets say that I have a number of Pandas data frames and for each data frame
> I want to generate a series of tables , graphs and text, and then combine
> these into a report. I could use a templating system like Jinja but I am
> curious to know if I could use the iPython framework of ipython-notebook
> ---> nbconverter ---> pdf/html/etc for the purpose of generating all of the
> data analyses and the report into a single document.I have followed
> Thomas K.'s suggestion to use the get_ipython().set_next_input() function
> to add text to the next code block. For my idea to work, a few things would
> need to work:
> example code.
> from IPython.core.display import Image, display_png
> x = Image(filename='test.png')
> for i in range(3):
> x = Image(filename='/Users/zachpowers/Downloads/pics/Sieve_1.png')
>  get_ipython().set_next_input('Thats What I am Talking About!')
>  get_ipython().set_next_input(display_png(x))
> if you run this you will see that there are a few different problems that
> you encounter.
> 1) you can't create Markdown cells
> 2) the display_png() function does not respect the .set_next_input()
> function so they are all displayed in the same output block in which they
> are called
> 3) the .set_next_input() function would need to be modified to track which
> code blocks it insert.  It iterates over the loop and inserts a code block
> below the code block it sits in with the result that the code blocks are
> added in reverse order from expected.
> 4) there would need to be a way to hide the code-block that calls the rest
> of the functions.
> 5) you would probably still need a templating engine to generate
> interesting text of each markdown block
> So in closing I think the python ---> nbconvert is a great tool and that
> it might potentially be useful for reproducible research of repetitive
> reports (say that five times fast). I think that a few tweaks to the
> ipython notebook might make this possible and that the benefit would be the
> creation of a single file from which analyses could be rerun and from which
> reports could be generated. However, upon writing up my thoughts I am not
> sure that this is easier than doing the analysis in one file and outputting
> the results via a separate templating system.
> I hope some of the iPython community might find this line of thought to be
> useful and if so we could try to implement some of these ideas.
> thanks,
> zach cp
> _______________________________________________
> IPython-User mailing list
> IPython-User@scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/ipython-user/attachments/20121203/50ebe7e7/attachment-0001.html 

More information about the IPython-User mailing list