11
11
from zarr .storage import DirectoryStore , init_array , contains_array , contains_group
12
12
13
13
14
- def create (shape , chunks , dtype = None , compression = 'default' ,
14
+ def create (shape , chunks = None , dtype = None , compression = 'default' ,
15
15
compression_opts = None , fill_value = None , order = 'C' , store = None ,
16
16
synchronizer = None , overwrite = False , path = None , chunk_store = None ):
17
17
"""Create an array.
@@ -20,8 +20,8 @@ def create(shape, chunks, dtype=None, compression='default',
20
20
----------
21
21
shape : int or tuple of ints
22
22
Array shape.
23
- chunks : int or tuple of ints
24
- Chunk shape.
23
+ chunks : int or tuple of ints, optional
24
+ Chunk shape. If not provided, will be guessed from `shape` and `dtype`.
25
25
dtype : string or dtype, optional
26
26
NumPy dtype.
27
27
compression : string, optional
@@ -85,7 +85,7 @@ def create(shape, chunks, dtype=None, compression='default',
85
85
return z
86
86
87
87
88
- def empty (shape , chunks , dtype = None , compression = 'default' ,
88
+ def empty (shape , chunks = None , dtype = None , compression = 'default' ,
89
89
compression_opts = None , order = 'C' , store = None , synchronizer = None ,
90
90
path = None , overwrite = False , chunk_store = None ):
91
91
"""Create an empty array.
@@ -106,7 +106,7 @@ def empty(shape, chunks, dtype=None, compression='default',
106
106
chunk_store = chunk_store )
107
107
108
108
109
- def zeros (shape , chunks , dtype = None , compression = 'default' ,
109
+ def zeros (shape , chunks = None , dtype = None , compression = 'default' ,
110
110
compression_opts = None , order = 'C' , store = None , synchronizer = None ,
111
111
path = None , overwrite = False , chunk_store = None ):
112
112
"""Create an array, with zero being used as the default value for
@@ -136,7 +136,7 @@ def zeros(shape, chunks, dtype=None, compression='default',
136
136
overwrite = overwrite , chunk_store = chunk_store )
137
137
138
138
139
- def ones (shape , chunks , dtype = None , compression = 'default' ,
139
+ def ones (shape , chunks = None , dtype = None , compression = 'default' ,
140
140
compression_opts = None , order = 'C' , store = None , synchronizer = None ,
141
141
path = None , overwrite = False , chunk_store = None ):
142
142
"""Create an array, with one being used as the default value for
@@ -166,7 +166,7 @@ def ones(shape, chunks, dtype=None, compression='default',
166
166
chunk_store = chunk_store )
167
167
168
168
169
- def full (shape , chunks , fill_value , dtype = None , compression = 'default' ,
169
+ def full (shape , fill_value , chunks = None , dtype = None , compression = 'default' ,
170
170
compression_opts = None , order = 'C' , store = None , synchronizer = None ,
171
171
path = None , overwrite = False , chunk_store = None ):
172
172
"""Create an array, with `fill_value` being used as the default value for
@@ -271,8 +271,8 @@ def open_array(path, mode='a', shape=None, chunks=None, dtype=None,
271
271
(fail if exists).
272
272
shape : int or tuple of ints
273
273
Array shape.
274
- chunks : int or tuple of ints
275
- Chunk shape.
274
+ chunks : int or tuple of ints, optional
275
+ Chunk shape. If not provided, will be guessed from `shape` and `dtype`.
276
276
dtype : string or dtype, optional
277
277
NumPy dtype.
278
278
compression : string, optional
@@ -387,7 +387,8 @@ def _like_args(a, shape, chunks, dtype, compression, compression_opts, order):
387
387
try :
388
388
chunks = a .chunks
389
389
except AttributeError :
390
- raise ValueError ('chunks must be specified' )
390
+ # use auto-chunking
391
+ pass
391
392
if dtype is None :
392
393
dtype = a .dtype
393
394
if compression is None :
@@ -416,7 +417,7 @@ def empty_like(a, shape=None, chunks=None, dtype=None, compression=None,
416
417
shape , chunks , dtype , compression , compression_opts , order = \
417
418
_like_args (a , shape , chunks , dtype , compression , compression_opts ,
418
419
order )
419
- return empty (shape , chunks , dtype = dtype , compression = compression ,
420
+ return empty (shape , chunks = chunks , dtype = dtype , compression = compression ,
420
421
compression_opts = compression_opts , order = order ,
421
422
store = store , synchronizer = synchronizer , path = path ,
422
423
overwrite = overwrite , chunk_store = chunk_store )
@@ -430,7 +431,7 @@ def zeros_like(a, shape=None, chunks=None, dtype=None, compression=None,
430
431
shape , chunks , dtype , compression , compression_opts , order = \
431
432
_like_args (a , shape , chunks , dtype , compression , compression_opts ,
432
433
order )
433
- return zeros (shape , chunks , dtype = dtype , compression = compression ,
434
+ return zeros (shape , chunks = chunks , dtype = dtype , compression = compression ,
434
435
compression_opts = compression_opts , order = order ,
435
436
store = store , synchronizer = synchronizer , path = path ,
436
437
overwrite = overwrite , chunk_store = chunk_store )
@@ -443,7 +444,7 @@ def ones_like(a, shape=None, chunks=None, dtype=None, compression=None,
443
444
shape , chunks , dtype , compression , compression_opts , order = \
444
445
_like_args (a , shape , chunks , dtype , compression , compression_opts ,
445
446
order )
446
- return ones (shape , chunks , dtype = dtype , compression = compression ,
447
+ return ones (shape , chunks = chunks , dtype = dtype , compression = compression ,
447
448
compression_opts = compression_opts , order = order ,
448
449
store = store , synchronizer = synchronizer , path = path ,
449
450
overwrite = overwrite , chunk_store = chunk_store )
@@ -462,7 +463,7 @@ def full_like(a, shape=None, chunks=None, fill_value=None, dtype=None,
462
463
fill_value = a .fill_value
463
464
except AttributeError :
464
465
raise ValueError ('fill_value must be specified' )
465
- return full (shape , chunks , fill_value , dtype = dtype ,
466
+ return full (shape , chunks = chunks , fill_value = fill_value , dtype = dtype ,
466
467
compression = compression , compression_opts = compression_opts ,
467
468
order = order , store = store , synchronizer = synchronizer ,
468
469
path = path , overwrite = overwrite , chunk_store = chunk_store )
0 commit comments