remove a chunk from an existing data set. If you think about this it makes
unfortunate way. So HDF5 doesn't even try. However, you can fake it by
repacking. Or you can fake it by copying over the data you want to keep to
a new file. Neither of these are ideal, but they would work.
extraordinarily well.
Post by Antonio ValentinoHi Anthony, hi Giovanni,
Post by Anthony ScopatzOn Mon, Aug 5, 2013 at 3:14 PM, Giovanni Luca Ciampaglia <
Hi Anthony,
what do you mean precisely? I tried
del ca[:,:]
but CArray does not support __delitem__. Looking in the documentation I
could
Post by Anthony Scopatzonly find a method called remove_rows, but it's in Table, not CArray.
Maybe I am
Post by Anthony Scopatzmissing 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!
Post by Anthony ScopatzSo 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).
Post by Anthony ScopatzIt 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.
Post by Anthony ScopatzBe Well
Anthony
Thank,
Giovanni
On Mon 05 Aug 2013 03:43:42 PM EDT,
Hello Giovanni, I think you may need to del that slice and then
possibly
Post by Anthony Scopatzrepack. Hope this helps. Be Well Anthony On Mon, Aug 5, 2013 at 2:09
PM,
Post by Anthony ScopatzPost by Giovanni Luca CiampagliaHello all,
is there a way to clear out a chunk from a CArray? I noticed that
setting
Post by Anthony ScopatzPost by Giovanni Luca Ciampagliathe
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),
Post by Anthony ScopatzPost by Giovanni Luca Ciampagliachunkshape=(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
------------------------------------------------------------------------------
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
https://lists.sourceforge.net/lists/listinfo/pytables-users