[ncl-talk] sub: array (monthly average ) or climatology ....
Adv
advita6 at gmail.com
Wed Nov 4 11:56:11 MST 2015
Hi,
Thanks for your reply. Sorry for the misrepresentation.
I printed below the error output.
While the loop starting for the second time I get this error. I am sure
that the representation to calculate average of all the jan months are
right.
I tried to create two domensional array which is commented in the code to
write output. But that is not a problem.
why particularly error in this specific line for the second time loop is
what i don't understand. There is no dimension error for the first time.
But for the second one.
minnesota50.csv
<https://drive.google.com/file/d/0B5aDji6ggKPARHlEUW9Ta0tMZG8/view?usp=drive_web>
Thank you,
fatal:Dimension sizes of left hand side and right hand side of assignment
do not match
fatal:["Execute.c":8575]:Execute: Error occurred at or near line 51 in file
reaadworkcsv.ncl
On Wed, Nov 4, 2015 at 12:30 PM, Alan Brammer <abrammer at albany.edu> wrote:
> Had this folder open so I’ll give you a quick reply.
>
> There’s a lot of code here and no explanation of why you need help?
> Although it sometimes resembles it I believe this list isn’t really
> intended as a place to just quickly outsource your scripting desires.
>
> What have you tried?
> What specific issue did you run into?
> How is anyone on here supposed to know your data layout?
> Have you looked at the numerous climatology examples and previous ncl-talk
> questions?
> Where did the answers to the above questions fall short and thus what
> specifically is the problem?
>
> Good luck. As always direct replies to the list. Hopefully a more
> specific question lends it self to a more specific answer.
>
>
> Alan.
>
>
> > On 4 Nov 2015, at 13:23, Adv <advita6 at gmail.com> wrote:
> >
> > Hi NCL user,
> >
> > I would like to write final average corresponding to each station,
> monthly average of 42 years to a two dimensionl array.
> > Could someone help me to accomplish this?
> >
> > Thank you,
> > Adv
> >
> > begin
> > ; diri = "./"
> > fkey = "minnesota"
> > strs=asciiread("minnesota50.csv" , -1, "string")
> > n1=(/"197301","197401","197501","197601","197701","197801" \
> > ,"197901","198001","198101","198201","198301","198401" \
> > ,"198501","198601","198701","198801","198901","199001" \
> > ,"199101","199201","199301","199401","199501","199601" \
> > ,"199701","199801","199901","200001","200101","200201","200301" \
> > ,"200401","200501","200601","200701","200801","200901" \
> > ,"201001","201101","201201","201301","201401"/)
> > print(n1)
> > ns1 = dimsizes(n1)
> > print(ns1)
> > do j =0, dimsizes(n1)-1
> >
> > ; yyyymm = 197301
> > yyyymm = n1(j)
> > fldstr = "PRCP" ; case
> sensitive
> > con = 1.00
> > print(yyyymm)
> > ;return
> > ;***********************************************
> > ; match all data lines with specified YYYYYY
> > ;***********************************************
> >
> > ; seldata = str_match_ic_regex(strs, tostring(yyyymm)) ; 6.3.0
> > seldata = str_match_ic_regex(strs, tostring(yyyymm)) ; 6.3.0
> > ; print(seldata)
> > print("=====")
> > n=(/"THIEF","PARK"/)
> > print(n)
> > ns = dimsizes(n)
> > print(ns)
> > tim = new((/ns1,ns/),"float")
> > printVarSummary(tim)
> > ;tavg = new((/ns1,ns/),"float")
> > tavg = new(ns,float)
> > print(tavg)
> > do i =0, dimsizes(n)-1
> > strkey = n(i)
> > print(strkey)
> > ;strkey= "THIEF"
> > ;print(strkey)
> > ;return
> > ; find all lines (rows) which contain the key string
> >
> > seldata1 = str_match_ic_regex(seldata, strkey) ; 6.3.0 onward
> > print(seldata1)
> > print(dimsizes(seldata1))
> > ;***********************************************
> > ; write selected data to ascii file
> > ;***********************************************
> > seldir = "./"
> > selfil = fkey+"."+yyyymm+".csv"
> > system("/bin/rm -f "+seldir+selfil)
> > asciiwrite(seldir+selfil, seldata1) ; all data for selected yyyymm
> > ;***********************************************
> > ; Which field matches
> > ;***********************************************
> > FIELDS = (/"STATION","STATION_NAME","ELEVATION","LATITUDE","LONGITUDE"
> \
> > ,"DATE","MDPR","MDSF","DAPR","DASF","PRCP","SNWD","SNOW"
> \
> > ,"TMAX","TMIN","TOBS"
> /)
> >
> >
> > nfield = ind(FIELDS.eq.fldstr) + 1 ; field to be extracted
> > print("fldstr="+fldstr+" corresponds to field number "+nfield)
> > print("=====")
> > ;***********************************************
> > ; extract the values
> > ;***********************************************
> >
> > sdat = str_get_field(seldata1 , 2, ",")
> > ;*********Monthly average********************************
> > data = tofloat( str_get_field(seldata1 , nfield, ",") )*con
> > data at _FillValue = -9999*con
> > print(sdat+" : "+data)
> > print("=====")
> > ;print(data)
> > ;return
> > tavg(i)=avg(data)
> > end do
> > print(tavg)
> > ;tim(j,i)=tavg
> > end do
> >
> >
> >
> > _______________________________________________
> > ncl-talk mailing list
> > ncl-talk at ucar.edu
> > List instructions, subscriber options, unsubscribe:
> > http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20151104/6beed770/attachment.html
More information about the ncl-talk
mailing list