ndarray.scala icon indicating copy to clipboard operation
ndarray.scala copied to clipboard

Support for NaN as fill_value

Open ermlauri opened this issue 5 years ago • 0 comments

Hi, @ryan-williams current example uses null as fill value, but also NaN is often used. With our data (NaN as fill_value), if i do val zarrGroup: zarr.Group = get(Path("/home/lauri/Downloads/GFS/hycom_test").load[Group])

I get:

Not an array:
DecodingFailure(Double, List())
Not a group:
org.lasersonlab.zarr.Group$InvalidChild: Path /home/lauri/Downloads/GFS/hycom_test/lon/.zarray:
Not an array:
org.lasersonlab.io.FileNotFoundException
Not a group:
java.nio.file.NotDirectoryException: /home/lauri/Downloads/GFS/hycom_test/lon/.zarray
	at org.lasersonlab.zarr.Group$.$anonfun$apply$20(Group.scala:138)
	at scala.util.Either$LeftProjection.map(Either.scala:573)
	at org.lasersonlab.zarr.Group$.$anonfun$apply$19(Group.scala:133)
	at scala.util.Success.$anonfun$map$1(Try.scala:255)
	at scala.util.Success.map(Try.scala:213)
	at scala.concurrent.Future.$anonfun$map$1(Future.scala:292)
	at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33)
	at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33)
	at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64)
	at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402)
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: DecodingFailure(Double, List())

Same data works in Python Zarr.

ermlauri avatar Feb 06 '20 07:02 ermlauri