Not a stupid question, but a frequent one. To get just ascii for one
variable, one datum per line, no indices or labels (following Pedro's
suggestion to use ncks):
ncks -s '%13.9f\n' -C -H -d time,0,3 -v precip precip.ens01.nc
0.000002705
0.000002711
0.000002716
0.000002711
0.000002707
<snip>
This follows one of the lower examples in the ncks on-line
documentation ( http://nco.sourceforge.net/nco.html ). Notes:
1. Behavior may change with NCO versions. I had to add -H to get
output matching the example on the website. My NCO/ncks version is
4.2.0.
2. One advantage of ncks is that you can specify a printf-style
format string to get the desired format and significant digits, as
shown here.
3. Another advantage is that you can use NCO's -d option to subscript
along any dimensions needed (hyperslabs). Also as shown above.
4. Careful, the \n in the format string is critical when using -s.
This also results in an extra blank line at the end of the output.
--Dave
On Wed, Sep 19, 2012 at 3:09 PM, Pedro Vicente
<pedro.vicente@xxxxxxxxxxxxxxxxxx> wrote:
>>> I just want either a single-column ascii output of the data values or a
>>> binary dump that I can run od on to get same.
>
>
> $ ncdump -v data example_000.nc
> $ ncks -v data example_000.nc
> $ h5dump -d data example_000.nc
>
>
> below outputs for each, it seems ncks is what you want
>
>
> $ ncdump -v data example_000.nc
>
> netcdf example_000 {
> dimensions:
> x = 4 ;
> y = 6 ;
> variables:
> float data(x, y) ;
> float x(x) ;
> float y(y) ;
> data:
>
> data =
> 0, 1, 2, 3, 4, 5,
> 6, 7, 8, 9, 10, 11,
> 12, 13, 14, 15, 16, 17,
> 18, 19, 20, 21, 22, 23 ;
> }
>
>
> $ ncks -v data example_000.nc
>
> data: type NC_FLOAT, 2 dimensions, 0 attributes, chunked? no, compressed?
> no, packed? no, ID = 0
> data size (in RAM) is 4*6*sizeof(NC_FLOAT) = 24*4 = 96 bytes
> data dimension 0: x, size = 4 NC_FLOAT, dim. ID = 0 (Coordinate dimension)
> data dimension 1: y, size = 6 NC_FLOAT, dim. ID = 1 (Coordinate dimension)
>
> x: type NC_FLOAT, 1 dimension, 0 attributes, chunked? no, compressed? no,
> packed? no, ID = 1
> x size (in RAM) is 4*sizeof(NC_FLOAT) = 4*4 = 16 bytes
> x dimension 0: x, size = 4 NC_FLOAT, dim. ID = 0 (Coordinate dimension)
>
> y: type NC_FLOAT, 1 dimension, 0 attributes, chunked? no, compressed? no,
> packed? no, ID = 2
> y size (in RAM) is 6*sizeof(NC_FLOAT) = 6*4 = 24 bytes
> y dimension 0: y, size = 6 NC_FLOAT, dim. ID = 1 (Coordinate dimension)
>
> x[0]=0 y[0]=0 data[0]=0
> x[0]=0 y[1]=10 data[1]=1
> x[0]=0 y[2]=20 data[2]=2
> x[0]=0 y[3]=30 data[3]=3
> x[0]=0 y[4]=40 data[4]=4
> x[0]=0 y[5]=50 data[5]=5
> x[1]=10 y[0]=0 data[6]=6
> x[1]=10 y[1]=10 data[7]=7
> x[1]=10 y[2]=20 data[8]=8
> x[1]=10 y[3]=30 data[9]=9
> x[1]=10 y[4]=40 data[10]=10
> x[1]=10 y[5]=50 data[11]=11
> x[2]=20 y[0]=0 data[12]=12
> x[2]=20 y[1]=10 data[13]=13
> x[2]=20 y[2]=20 data[14]=14
> x[2]=20 y[3]=30 data[15]=15
> x[2]=20 y[4]=40 data[16]=16
> x[2]=20 y[5]=50 data[17]=17
> x[3]=30 y[0]=0 data[18]=18
> x[3]=30 y[1]=10 data[19]=19
> x[3]=30 y[2]=20 data[20]=20
> x[3]=30 y[3]=30 data[21]=21
> x[3]=30 y[4]=40 data[22]=22
> x[3]=30 y[5]=50 data[23]=23
>
> x[0]=0
> x[1]=10
> x[2]=20
> x[3]=30
>
> y[0]=0
> y[1]=10
> y[2]=20
> y[3]=30
> y[4]=40
> y[5]=50
>
>
>
> $ h5dump -d data example_000.nc
>
> HDF5 "example_000.nc" {
> DATASET "data" {
> DATATYPE H5T_IEEE_F32LE
> DATASPACE SIMPLE { ( 4, 6 ) / ( 4, 6 ) }
> DATA {
> (0,0): 0, 1, 2, 3, 4, 5,
> (1,0): 6, 7, 8, 9, 10, 11,
> (2,0): 12, 13, 14, 15, 16, 17,
> (3,0): 18, 19, 20, 21, 22, 23
> }
> ATTRIBUTE "DIMENSION_LIST" {
> DATATYPE H5T_VLEN { H5T_REFERENCE { H5T_STD_REF_OBJECT }}
> DATASPACE SIMPLE { ( 2 ) / ( 2 ) }
> DATA {
> (0): (DATASET 539 /x ), (DATASET 823 /y )
> }
> }
> }
> }
>
>
>
> ----------------------
> Pedro Vicente
> pedro.vicente@xxxxxxxxxxxxxxxxxx
> http://www.space-research.org/
>
>
> ----- Original Message ----- From: "Lynnes, Christopher S. (GSFC-6102)"
> <christopher.s.lynnes@xxxxxxxx>
> To: "NetCDF Group List" <netcdfgroup@xxxxxxxxxxxxxxxx>
> Sent: Wednesday, September 19, 2012 3:35 PM
> Subject: [netcdfgroup] stupid question: how do I dump just the contents of a
> variable from a netCDF file?
>
>
>> I mean, no header info, no data attributes, no coordinate indices. I just
>> want either a single-column ascii output of the data values or a binary dump
>> that I can run od on to get same.
>>
>> Can't seem to find the right combo of args in either ncdump or h5dump...
>> --
>> Dr. Christopher Lynnes NASA/GSFC, Code 610.2 phone: 301-614-5185