Thanks Mathieu!

I am glad this is working for you now.  File this one under "Mysterious
Errors of the Universe" :).

Be Well
Anthony


On Fri, Jul 5, 2013 at 6:51 PM, Mathieu Dubois
<duboismathieu_g...@yahoo.fr>wrote:

>  Hi,
>
> Sorry for the late response.
>
> First of all, I have managed to achieve what I wanted to do differently.
>
> Then the code Francesc send works well (I had to adapt it because I use
> version 2.3.1 under Ubuntu 12.04).
>
> I was able to reproduce something similar with a class like this (copied &
> pasted from the tutorial):
>
> import tables as tb
>
> import numpy as np
>
> class Subject(tb.IsDescription):
>
>      # Subject information
>
>      Id       = tb.UInt16Col()
>
>      Image    = tb.Float32Col(shape=(121, 145, 121))
>
> h5file = tb.openFile("tutorial1.h5", mode = "w", title = "Test file")
>
> group = h5file.createGroup("/", 'subject', 'Suject information')
>
> table = h5file.createTable(group, 'readout', Subject, "Readout example")
>
> subject = table.row
>
> for i in xrange(10):
>
>      subject['Id'] = i
>
>      subject['Image'] = np.ones((121, 145, 121))
>
>      subject.append()
>
> This code works well  too.
>
> So I don't really know why nothing was working yesterday: this was the
> same class and a very close program. I will try to investigate later on
> this.
>
> Thanks for everything,
> Mahtieu
>
> Le 05/07/2013 16:54, Anthony Scopatz a écrit :
>
>
>
>
> On Fri, Jul 5, 2013 at 8:40 AM, Francesc Alted <fal...@gmail.com> wrote:
>
>> On 7/5/13 1:33 AM, Mathieu Dubois wrote:
>> > tables.tableExtension.Table._createTable (tables/tableExtension.c:2181)
>> >>
>> >>     tables.exceptions.HDF5ExtError: Problems creating the table
>> >>
>> >>     I think that the size of the column is too large (if I remove the
>> >>     Image
>> >>     field, everything works perfectly).
>> >>
>> >>
>> >> Hi Mathieu,
>> >>
>> >> This shouldn't be the case.  What is the value of IMAGE_SIZE?
>> >
>> > IMAGE_SIZE is a tuple containing (121, 145, 121).
>>
>>  This is a bit large for a row in the Table object.  My recommendation
>> for these cases is to use an associated EArray with shape (0, 121, 145,
>> 121) and then append the images there.  You can always refer to the
>> image by issuing a __getitem__() operation on the EArray object with the
>> index of the row in the table.  Easy as a pie and you will allow the
>> compression library (in case you are using compression) to work much
>> more efficiently for the table.
>>
>
>
>  Hi Francesc,
>
>  I disagree that this shape is too large for a table.  Here is a minimal
> example that works for me:
>
>  import tables as tb
> import numpy as np
>
>  images = np.ones(100, dtype=[('id', np.uint16),
>                              ('image', np.float32, (121, 145, 121))
>                              ])
>
>  with tb.open_file('temp.h5', 'w') as f:
>     f.create_table('/', 'images', images)
>
>  I think that there is something else going on with the initialization
> but Mathieu hasn't given us enough information to figure it out =/.  A
> minimal failing script would be super helpful here!
>
>  (BTW Mathieu, Tables can also take advantage of compression.  Though
> Francesc's solution is nicer for a lot of reason too.)
>
>  Be Well
>  Anthony
>
>
>>
>> HTH,
>>
>> -- Francesc Alted
>>
>>
>> ------------------------------------------------------------------------------
>> This SF.net email is sponsored by Windows:
>>
>> Build for Windows Store.
>>
>> http://p.sf.net/sfu/windows-dev2dev
>> _______________________________________________
>> Pytables-users mailing list
>> Pytables-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/pytables-users
>>
>
>
>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by Windows:
>
> Build for Windows Store.
> http://p.sf.net/sfu/windows-dev2dev
>
>
>
> _______________________________________________
> Pytables-users mailing 
> listPytables-users@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/pytables-users
>
>
>
>
> ------------------------------------------------------------------------------
> This SF.net email is sponsored by Windows:
>
> Build for Windows Store.
>
> http://p.sf.net/sfu/windows-dev2dev
> _______________________________________________
> Pytables-users mailing list
> Pytables-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pytables-users
>
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Pytables-users mailing list
Pytables-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pytables-users

Reply via email to