Hi Anthony, hi Giovanni,

Il giorno 06/ago/2013, alle ore 00:45, Anthony Scopatz <scop...@gmail.com> ha 
scritto:

> 
> On Mon, Aug 5, 2013 at 3:14 PM, Giovanni Luca Ciampaglia 
> <glciamp...@gmail.com> wrote:
> Hi Anthony,
> 
> what do you mean precisely? I tried
> 
> del ca[:,:]
> 
> but CArray does not support __delitem__. Looking in the documentation I could
> only find a method called remove_rows, but it's in Table, not CArray. Maybe I 
> am
> missing something?
> 
> Huh, it should...  This is definitely an oversight on our part.  If you could 
> please open an issue for this -- or better yet -- write a pull request that 
> implements delitem, that'd be great!
> 
> So I think you are right that there is no current way to delete rows from a 
> CArray.  Oops!  (Of course, I may still be missing something as well).
> 
> It looks like EArray also has this problem too, otherwise I would just tell 
> you to use that.

I'm not sure to understand the problem.

The "truncate" method of arrays can be used to remove rows from an extendable 
array.
It seems to me that it is not documented but we should add it to the UG.

CArrays cannot be resized.

> 
> Be Well
> Anthony
>  
> 
> Thank,
> 
> Giovanni
> 
> On Mon 05 Aug 2013 03:43:42 PM EDT, 
> pytables-users-requ...@lists.sourceforge.net
> wrote:
> >
> >> Hello Giovanni, I think you may need to del that slice and then possibly
> >> repack. Hope this helps. Be Well Anthony On Mon, Aug 5, 2013 at 2:09 PM,
> >> Giovanni Luca Ciampaglia < glciamp...@gmail.com> wrote:
> >>> Hello all,
> >>>
> >>> is there a way to clear out a chunk from a CArray? I noticed that setting
> >>> the
> >>> data to zero actually takes disk space, i.e.
> >>>
> >>> ***
> >>> from tables import open_file, BoolAtom
> >>>
> >>> h5f = open_file('test.h5', 'w')
> >>> ca = h5f.create_carray(h5f.root, 'carray', BoolAtom(), shape=(1000,1000),
> >>> chunkshape=(1,1000))
> >>> ca[:,:] = False
> >>> h5f.close()
> >>> ***
> >>>
> >>> The resulting file takes 249K ...
> >>>
> >>> Best,
> >>>
> >>> --
> >>> Giovanni Luca Ciampaglia


HDF5 handles efficiently chunks that have never been written saving some disk 
space but I doubt that chunks can be "de-initializad".
If my understanding is correct, once one write some value in a chunk (even if 
it is the default value) the chunk is allocated at HDF5 level and written to 
disk.
At they point one can only change item values.
Also I doubt that a repack can help in this case (not tested).

The only solution IMO is compression.


cheers

--
Antonio Valentino

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
Pytables-users mailing list
Pytables-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pytables-users

Reply via email to