Closed larsoner closed 11 years ago
... incredible, I was developing on 0.8.1 .... damn it. You are right, going through the versions was something i still wanted to do before 0.5.... Can try to find a fix tomorrow.
Versions are such a pain. At least across all our computers we can catch a lot of them before subjecting the general public to them too much.
instead append=True --- drop=False coudl do it.
On Tue, Dec 18, 2012 at 1:38 AM, Denis-Alexander Engemann < denis.engemann@gmail.com> wrote:
... incredible, I was developing on 0.8.1 .... damn it. You are right, going through the versions was something i still wanted to do before 0.5.... Can try to find a fix tomorrow.
Yes, that's then positive aspect of it ;-)
On Tue, Dec 18, 2012 at 1:40 AM, Eric89GXL notifications@github.com wrote:
Versions are such a pain. At least across all our computers we can catch a lot of them before subjecting the general public to them too much.
— Reply to this email directly or view it on GitHubhttps://github.com/mne-tools/mne-python/issues/286#issuecomment-11469120.
Is drop=False
forward-compatible, or do I need to put it in a try-except?
On OS X 10.8.2 with EPD 32 / pandas 0.9.1-1 it runs fine. Do you want me to try other versions? Is there no pl.show()
at the end intentionally?
I should install a virtualbox with debian stable or so...
On Tue, Dec 18, 2012 at 1:41 AM, Denis-Alexander Engemann < denis.engemann@gmail.com> wrote:
Yes, that's then positive aspect of it ;-)
On Tue, Dec 18, 2012 at 1:40 AM, Eric89GXL notifications@github.comwrote:
Versions are such a pain. At least across all our computers we can catch a lot of them before subjecting the general public to them too much.
— Reply to this email directly or view it on GitHubhttps://github.com/mne-tools/mne-python/issues/286#issuecomment-11469120.
. on my box pandas would just show it .... but maybe adding it would make sense. Let me tell you in a few moments whether it is forward compatible...
On Tue, Dec 18, 2012 at 1:42 AM, Christian Brodbeck < notifications@github.com> wrote:
On OS X 10.8.2 with EPD 32 / pandas 0.9.1-1 it runs fine. Do you want me to try other versions? Is there no pl.show() at the end intentionally?
— Reply to this email directly or view it on GitHubhttps://github.com/mne-tools/mne-python/issues/286#issuecomment-11469176.
@dengemann drop=False
works, but then I get another error:
ValueError: level > 0 only valid with MultiIndex
File "/home/larsoner/custombuilds/mne-python/examples/export/plot_epochs_as_data_frame.py", line 182, in <module>
grouped = df.groupby(level=['condition', 'epoch'])
File "/usr/lib/pymodules/python2.7/pandas/core/generic.py", line 134, in groupby
sort=sort, group_keys=group_keys)
File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 459, in groupby
return klass(obj, by, **kwds)
File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 142, in __init__
level=level, sort=sort)
File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 1055, in _get_grouper
raise ValueError('level > 0 only valid with MultiIndex')
. on my box pandas would just show it .... but maybe adding it would make
here the plot just blinks and disappears (unlike other examples)
forget about drop=False...
On Tue, Dec 18, 2012 at 1:43 AM, Denis-Alexander Engemann < denis.engemann@gmail.com> wrote:
. on my box pandas would just show it .... but maybe adding it would make sense. Let me tell you in a few moments whether it is forward compatible...
On Tue, Dec 18, 2012 at 1:42 AM, Christian Brodbeck < notifications@github.com> wrote:
On OS X 10.8.2 with EPD 32 / pandas 0.9.1-1 it runs fine. Do you want me to try other versions? Is there no pl.show() at the end intentionally?
— Reply to this email directly or view it on GitHubhttps://github.com/mne-tools/mne-python/issues/286#issuecomment-11469176.
I fear i've got to modify the example a bit. It's just about one or two lines but the rest seems to depend on it and so the story told somewhat changes.
On Tue, Dec 18, 2012 at 1:45 AM, Eric89GXL notifications@github.com wrote:
@dengemann https://github.com/dengemann drop=False works, but then I get another error:
ValueError: level > 0 only valid with MultiIndex
File "/home/larsoner/custombuilds/mne-python/examples/export/plot_epochs_as_data_frame.py", line 182, in
grouped = df.groupby(level=['condition', 'epoch']) File "/usr/lib/pymodules/python2.7/pandas/core/generic.py", line 134, in groupby sort=sort, group_keys=group_keys) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 459, in groupby return klass(obj, by, kwds) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 142, in init** level=level, sort=sort) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 1055, in _get_grouper raise ValueError('level > 0 only valid with MultiIndex') — Reply to this email directly or view it on GitHubhttps://github.com/mne-tools/mne-python/issues/286#issuecomment-11469245.
How does this work on your boxes?
https://gist.github.com/b12c637da892511b0862
On Tue, Dec 18, 2012 at 1:49 AM, Denis-Alexander Engemann < denis.engemann@gmail.com> wrote:
I fear i've got to modify the example a bit. It's just about one or two lines but the rest seems to depend on it and so the story told somewhat changes.
On Tue, Dec 18, 2012 at 1:45 AM, Eric89GXL notifications@github.comwrote:
@dengemann https://github.com/dengemann drop=False works, but then I get another error:
ValueError: level > 0 only valid with MultiIndex
File "/home/larsoner/custombuilds/mne-python/examples/export/plot_epochs_as_data_frame.py", line 182, in
grouped = df.groupby(level=['condition', 'epoch']) File "/usr/lib/pymodules/python2.7/pandas/core/generic.py", line 134, in groupby sort=sort, group_keys=group_keys) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 459, in groupby return klass(obj, by, kwds) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 142, in init** level=level, sort=sort) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 1055, in _get_grouper raise ValueError('level > 0 only valid with MultiIndex') — Reply to this email directly or view it on GitHubhttps://github.com/mne-tools/mne-python/issues/286#issuecomment-11469245.
changed: df = df.reset_index('epoch')
and
max_latency = grouped[sel[0]].apply(lambda x: x.index[x.argmax()])
-- if it's fine let me clean it up this way tomorrow.
On Tue, Dec 18, 2012 at 1:54 AM, Denis-Alexander Engemann < denis.engemann@gmail.com> wrote:
How does this work on your boxes?
https://gist.github.com/b12c637da892511b0862
On Tue, Dec 18, 2012 at 1:49 AM, Denis-Alexander Engemann < denis.engemann@gmail.com> wrote:
I fear i've got to modify the example a bit. It's just about one or two lines but the rest seems to depend on it and so the story told somewhat changes.
On Tue, Dec 18, 2012 at 1:45 AM, Eric89GXL notifications@github.comwrote:
@dengemann https://github.com/dengemann drop=False works, but then I get another error:
ValueError: level > 0 only valid with MultiIndex
File "/home/larsoner/custombuilds/mne-python/examples/export/plot_epochs_as_data_frame.py", line 182, in
grouped = df.groupby(level=['condition', 'epoch']) File "/usr/lib/pymodules/python2.7/pandas/core/generic.py", line 134, in groupby sort=sort, group_keys=group_keys) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 459, in groupby return klass(obj, by, kwds) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 142, in init** level=level, sort=sort) File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 1055, in _get_grouper raise ValueError('level > 0 only valid with MultiIndex') — Reply to this email directly or view it on GitHubhttps://github.com/mne-tools/mne-python/issues/286#issuecomment-11469245.
Works as before, still not keeping the figure. Even adding pl.show() at the end does not actually make the figure stay.
execfile(filename, namespace)
File "/home/larsoner/custombuilds/mne-python/examples/export/plot_epochs_as_data_frame.py", line 182, in <module>
grouped = df.groupby(['condition', 'epoch'])
File "/usr/lib/pymodules/python2.7/pandas/core/generic.py", line 134, in groupby
sort=sort, group_keys=group_keys)
File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 459, in groupby
return klass(obj, by, **kwds)
File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 142, in __init__
level=level, sort=sort)
File "/usr/lib/pymodules/python2.7/pandas/core/groupby.py", line 1110, in _get_grouper
gpr = obj[gpr]
File "/usr/lib/pymodules/python2.7/pandas/core/frame.py", line 1634, in __getitem__
return self._get_item_cache(key)
File "/usr/lib/pymodules/python2.7/pandas/core/generic.py", line 473, in _get_item_cache
values = self._data.get(item)
File "/usr/lib/pymodules/python2.7/pandas/core/internals.py", line 827, in get
_, block = self._find_block(item)
File "/usr/lib/pymodules/python2.7/pandas/core/internals.py", line 935, in _find_block
self._check_have(item)
File "/usr/lib/pymodules/python2.7/pandas/core/internals.py", line 942, in _check_have
raise KeyError('no item named %s' % str(item))
KeyError: 'no item named epoch'
Line 182, the failing one, is this:
grouped = df.groupby(['condition', 'epoch'])
pandas is definitely developping fast.... gr. let me fix it tomorrow in trying to bypass these multi index related opereations. the feature is apparently too unsettled to be good example material. at least i'm happy the exporter itself worked on your boxes.
anyways, should not be difficult to fix. has anyone 7 < pandas < 8 on his box?
On 18.12.2012, at 01:58, Eric89GXL notifications@github.com wrote:
Line 182, the failing one, is this:
grouped = df.groupby(['condition', 'epoch']) — Reply to this email directly or view it on GitHub.
I only have 0.8.0. It looks like pandas' github has maintenance branches for 0.7.x and 0.9.x, though, so presumably if you develop for 0.7.x you'll be okay.
EPD has
pandas 0.2-2 free
0.2-3 free
0.3.0-1 free
0.3.0-2 free
0.3.0-3 free
0.4.3-1 free
0.6.1-1 free
0.7.0-1 free
0.7.1-1 free
0.7.2-1 free
0.7.3-1 free
0.7.3-2 free
0.8.0rc2-1 free
0.9.0-1 free
* 0.9.1-1 free
yes, 0.7 would also be my intuition about the lower bound for support. i think changes since 0.5 / 0.6 have been rather dramatic. Thanks for trying / reporting! I'll test against the supported branches hoping to find a common denominator. as i said i'm sure the multi-index api is causing the most trouble.
thx, d
On 18.12.2012, at 02:14, Eric89GXL notifications@github.com wrote:
I only have 0.8.0. It looks like pandas' github has maintenance branches for 0.7.x and 0.9.x, though, so presumably if you develop for 0.7.x you'll be okay.
— Reply to this email directly or view it on GitHub.
Running your pandas_example.py
with 0.7.2-1 I get the following,
Traceback (most recent call last):
File "pandas_example.py", line 159, in <module>
df.ix[:3, sel].plot(xticks=xticks)
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/pandas/core/frame.py", line 3923, in plot
ax.plot(x, y, label=str(col), **kwds)
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 3848, in plot
for line in self._get_lines(*args, **kwargs):
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 323, in _grab_next_args
for seg in self._plot_args(remaining, kwargs):
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 310, in _plot_args
seg = func(x[:,j%ncx], y[:,j%ncy], kw, kwargs)
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 260, in _makeline
self.set_lineprops(seg, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 201, in set_lineprops
raise TypeError, 'There is no line property "%s"'%key
TypeError: There is no line property "xticks"
thanks, that's very useful. so fancy plotting args are the second thing to target at....
On 18.12.2012, at 02:20, Christian Brodbeck notifications@github.com wrote:
Running your pandas_example.py with 0.7.2-1 I get the following,
Traceback (most recent call last): File "pandas_example.py", line 159, in
df.ix[:3, sel].plot(xticks=xticks) File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/pandas/core/frame.py", line 3923, in plot ax.plot(x, y, label=str(col), _kwds) File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 3848, in plot for line in self._get_lines(_args, _kwargs): File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 323, in _grab_next_args for seg in self._plot_args(remaining, kwargs): File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 310, in _plot_args seg = func(x[:,j%ncx], y[:,j%ncy], kw, kwargs) File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 260, in _makeline self.set_lineprops(seg, *_kwargs) File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/matplotlib/axes.py", line 201, in set_lineprops raise TypeError, 'There is no line property "%s"'%key TypeError: There is no line property "xticks" — Reply to this email directly or view it on GitHub.
Hi folks,
before cleaning up the docs and issuing a PR, if you can spare 5 minutes, please tell me whether this works on your boxes:
I tested it against pandas 0.9.1 and 0.7.3
https://gist.github.com/b12c637da892511b0862
runs smooth here. If all is fine, my cut off suggestion would be pandas 0.7.3 which is about one year old. I think people knowing pandas also know how experimental / vibrant this project is, and probably are frequent updaters themselves.
Wdyt?
That sounds like a reasonable cutoff to me.
Ran fine, popped up 3 plots. You want to see them?
With 0.7.2-1 I still get the same error, with 0.7.3-1 it runs without error (although the plots still disappear instantly)
@christianmbrodbeck do the plots in other examples work for you? The plots stick around for me using Matplotlib 1.1.1 (under Spyder 2.1.10).
yes the plots of other examples stay open (and block the interpreter) until I close them. Just confirmed this with plot_topography.py, plot_topo_compare_conditions.py, plot_simulate_evoked_data.py (anyway in the pyshell that I usually use everything works fine, they only close quickly if run from the terminal)
current mpl in my EPD is 1.1.0-2
grr, should be 4...
On 19.12.2012, at 00:02, Eric89GXL notifications@github.com wrote:
That sounds like a reasonable cutoff to me.
Ran fine, popped up 3 plots. You want to see them?
— Reply to this email directly or view it on GitHub.
I get 4 in pyshell :)
... too mysterious. i added pl.ion() and ran it across versions and operating sytems (debian, mac)...
would be good to know what goes on on your box, chris.
what if you just ad pl.show after one of the plotting command?
hope we will identify the source of the trouble...
anyways, thanks for your responses!
D
On 19.12.2012, at 00:24, Christian Brodbeck notifications@github.com wrote:
yes the plots of other examples stay open (and block the interpreter) until I close them. Just confirmed this with plot_topography.py, plot_topo_compare_conditions.py, plot_simulate_evoked_data.py (anyway in the pyshell that I usually use everything works fine, they only close quickly if run from the terminal)
— Reply to this email directly or view it on GitHub.
"With 0.7.2-1 I still get the same error, with 0.7.3-1 it runs without error" same here.
aha, interesting. diversities of python.... but still, no real pattern. is it a bar plot or an meg plot that additionally appeated now?
On 19.12.2012, at 00:26, Christian Brodbeck notifications@github.com wrote:
I get 4 in pyshell :)
— Reply to this email directly or view it on GitHub.
Maybe it was 4, I will double-check
It was four! My bad. Two bar plots (one vert one horiz), plus two plots with MEG sensors. Just noticed there aren't units on most of the axes (ms for RT presumably, and fT/cm (?) for MEG), so you should check that, too.
I now put a pl.show() behind every tight-layout call, tried different backends (macosx, TkAgg, WXAgg), and EPD 64-bit, but nothing makes the plots stay when run from the terminal --- strange
no, there aren't. did not want to overdo it, keep it somewhat raw and leave units + polish to our native routines. do you want me to add units?
On 19.12.2012, at 00:35, Eric89GXL notifications@github.com wrote:
It was four! My bad. Two bar plots (one vert one horiz), plus two plots with MEG sensors. Just noticed there aren't units on most of the axes (ms for RT presumably, and fT/cm (?) for MEG), so you should check that, too.
— Reply to this email directly or view it on GitHub.
I'm fine with no units if you think it adds unnecessary complexity.
that's really strange... is this on a mac? did you make sure not to run the example in fullscreen mode terminal?
On 19.12.2012, at 00:52, Christian Brodbeck notifications@github.com wrote:
I now put a pl.show() behind every tight-layout call, tried different backends (macosx, TkAgg, WXAgg), and EPD 64-bit, but nothing makes the plots stay when run from the terminal --- strange
— Reply to this email directly or view it on GitHub.
If you think adding them would add unnecessary complexity, that is.
that's really strange... is this on a mac? did you make sure not to run the example in fullscreen mode terminal?
10.8.2. Fullscreen mode terminal (you mean the native Lion full screen mode?) does not help either.
we could add it, no extra complexity. my intention was just to put the focus on quick one liners and expose pandas as interactive tool rather then as plotting routine; i tried to add as few lines as possible to convey the pandas feel. if you think the examples would benifit and gain beauty from more detail i'm happy to add units ;-)
On 19.12.2012, at 01:10, Eric89GXL notifications@github.com wrote:
If you think adding them would add unnecessary complexity, that is.
— Reply to this email directly or view it on GitHub.
I'll let the merge-master @agramfort decide :)
... the other way round, the os x fullscreen would hide my plots....
On 19.12.2012, at 01:12, Christian Brodbeck notifications@github.com wrote:
that's really strange... is this on a mac? did you make sure not to run the example in fullscreen mode terminal?
10.8.2. Fullscreen mode terminal (you mean the native Lion full screen mode?) does not help either.
— Reply to this email directly or view it on GitHub.
... the other way round, the os x fullscreen would hide my plots....
oh, no, it actually took me back to the desktop when the plots appeared :) but they did not stay
somebody else has mac/EPD to confirm this? If it's just something about my specific configuration maybe it's not worth the trouble
Anyways, although preferring a raw style here, i'm not to passionate about this. As soon as some one says he wants units i'll just add them ;-)
On 19.12.2012, at 01:19, Eric89GXL notifications@github.com wrote:
I'll let the merge-master @agramfort decide :)
— Reply to this email directly or view it on GitHub.
i run mac epd on 10.8 ...
what happens id you just open a fresh terminal, construct a cartoon df from a random 2d array and invoke the plot method?
On 19.12.2012, at 01:21, Christian Brodbeck notifications@github.com wrote:
somebody else has mac/EPD to confirm this? If it's just something about my specific configuration maybe it's not worth the trouble
— Reply to this email directly or view it on GitHub.
[christian@Christians-MacBook-Pro] ~/Documents/Eclipse/projects/mne-python/examples$ python
Enthought Python Distribution -- www.enthought.com
Version: 7.3-2 (32-bit)
Python 2.7.3 |EPD 7.3-2 (32-bit)| (default, Apr 12 2012, 11:28:34)
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
Type "credits", "demo" or "enthought" for more information.
>>> from pylab import *
>>> import numpy as np
>>> plot(np.random.normal(0,1,5))
[<matplotlib.lines.Line2D object at 0x5b406f0>]
here the rocket app icon appears but I'm still in the terminal
>>> show()
Now the plot shows up until I dismiss it
I have a failing example:
Thoughts @christianmbrodbeck @dengemann? I am running Ubuntu 12.10 (latest) with pandas from the repos, so I think the version (pandas 0.8.0) should probably be supported...