{ "metadata": { "name": "gdas2csv" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "from pylab import *\n", "import netCDF4\n", "import pandas as pd" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 76 }, { "cell_type": "code", "collapsed": false, "input": [ "nc = netCDF4.Dataset('gdas.44512.2010040100.nc')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 77 }, { "cell_type": "code", "collapsed": false, "input": [ "print netCDF4.chartostring(nc.variables['hdr_sid'][-1,:])" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "PRDA2\n" ] } ], "prompt_number": 78 }, { "cell_type": "code", "collapsed": false, "input": [ "nobs,dum = shape(nc.variables['obs_arr'])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 79 }, { "cell_type": "code", "collapsed": false, "input": [ "obs_arr = nc.variables['obs_arr'][:,:]\n", "hdr_typ = netCDF4.chartostring(nc.variables['hdr_typ'][:,:])\n", "hdr_sid = netCDF4.chartostring(nc.variables['hdr_sid'][:,:])\n", "hdr_vld = netCDF4.chartostring(nc.variables['hdr_vld'][:,:])\n", "obs_qty = netCDF4.chartostring(nc.variables['obs_qty'][:,:])\n", "hdr_arr = nc.variables['hdr_arr'][:,:]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 103 }, { "cell_type": "code", "collapsed": false, "input": [ "id=int8(obs_arr[:,0])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 104 }, { "cell_type": "code", "collapsed": false, "input": [ "d={}\n", "d['station_id'] = hdr_sid[id]\n", "d['lon'] = hdr_arr[id,0]\n", "d['lat'] = hdr_arr[id,1]\n", "d['elev'] = hdr_arr[id,2]\n", "d['time'] = hdr_vld[id]\n", "d['grib_code'] = obs_arr[:,1]\n", "d['press'] = obs_arr[:,2]\n", "d['height'] = obs_arr[:,3]\n", "d['obs_val'] = obs_arr[:,4]\n", "d['quality'] = obs_qty[:]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 109 }, { "cell_type": "code", "collapsed": false, "input": [ "df = pd.DataFrame(d)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 106 }, { "cell_type": "code", "collapsed": false, "input": [ "df['year'] = df['time'].str[0:4]\n", "df['mon'] = df['time'].str[4:6]\n", "df['day'] = df['time'].str[6:8]\n", "df['hour'] = df['time'].str[9:11]\n", "del df['time']" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 110 }, { "cell_type": "code", "collapsed": false, "input": [ "print df.ix[0]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "elev 15\n", "grib_code 11\n", "height 14.99732\n", "lat -69.96\n", "lon 41.66\n", "obs_val 284.75\n", "press 1008\n", "quality 2\n", "station_id 74494\n", "mon 04\n", "year 2010\n", "day 01\n", "hour 00\n", "Name: 0, dtype: object\n" ] } ], "prompt_number": 117 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }