<div dir="ltr"><div><div>Hi NCL user,<br><br></div>I would like to write final average corresponding to each station, monthly average of 42 years to a two dimensionl array.<br></div>Could someone help me to accomplish this? <br><br>Thank you,<br>Adv<br><br>begin<br>;  diri   = &quot;./&quot;<br>  fkey   = &quot;minnesota&quot;<br>strs=asciiread(&quot;minnesota50.csv&quot; , -1, &quot;string&quot;)<br>n1=(/&quot;197301&quot;,&quot;197401&quot;,&quot;197501&quot;,&quot;197601&quot;,&quot;197701&quot;,&quot;197801&quot;             \<br>,&quot;197901&quot;,&quot;198001&quot;,&quot;198101&quot;,&quot;198201&quot;,&quot;198301&quot;,&quot;198401&quot;                \<br>,&quot;198501&quot;,&quot;198601&quot;,&quot;198701&quot;,&quot;198801&quot;,&quot;198901&quot;,&quot;199001&quot;               \<br>,&quot;199101&quot;,&quot;199201&quot;,&quot;199301&quot;,&quot;199401&quot;,&quot;199501&quot;,&quot;199601&quot;                \<br>,&quot;199701&quot;,&quot;199801&quot;,&quot;199901&quot;,&quot;200001&quot;,&quot;200101&quot;,&quot;200201&quot;,&quot;200301&quot;       \<br>,&quot;200401&quot;,&quot;200501&quot;,&quot;200601&quot;,&quot;200701&quot;,&quot;200801&quot;,&quot;200901&quot;                \<br>,&quot;201001&quot;,&quot;201101&quot;,&quot;201201&quot;,&quot;201301&quot;,&quot;201401&quot;/)<br>print(n1)<br>ns1 = dimsizes(n1)<br>print(ns1)<br>do j =0, dimsizes(n1)-1<br><br>;  yyyymm = 197301<br>  yyyymm = n1(j)<br>  fldstr = &quot;PRCP&quot;                                         ; case sensitive<br>  con    = 1.00<br>print(yyyymm)<br>;return<br>;***********************************************<br>; match all data lines with specified YYYYYY<br>;***********************************************<br><br>;  seldata = str_match_ic_regex(strs, tostring(yyyymm))    ; 6.3.0<br>  seldata = str_match_ic_regex(strs, tostring(yyyymm))    ; 6.3.0<br>;  print(seldata)<br>  print(&quot;=====&quot;)<br>n=(/&quot;THIEF&quot;,&quot;PARK&quot;/)<br>print(n)<br>ns = dimsizes(n)<br>print(ns)<br>tim = new((/ns1,ns/),&quot;float&quot;)<br>printVarSummary(tim)<br>;tavg = new((/ns1,ns/),&quot;float&quot;)<br>tavg = new(ns,float)<br>print(tavg)<br>do i =0, dimsizes(n)-1<br>strkey = n(i)<br>print(strkey)<br>;strkey= &quot;THIEF&quot;<br>;print(strkey)<br>;return<br>; find all lines (rows) which contain the key string<br><br>  seldata1 = str_match_ic_regex(seldata, strkey)     ; 6.3.0  onward<br>print(seldata1)<br>print(dimsizes(seldata1))<br>;***********************************************<br>; write selected data to ascii file<br>;***********************************************<br> seldir  = &quot;./&quot;<br>  selfil  = fkey+&quot;.&quot;+yyyymm+&quot;.csv&quot;<br>  system(&quot;/bin/rm -f &quot;+seldir+selfil)<br>  asciiwrite(seldir+selfil, seldata1)   ; all data for selected yyyymm<br>;***********************************************<br>; Which field matches<br>;***********************************************<br>FIELDS = (/&quot;STATION&quot;,&quot;STATION_NAME&quot;,&quot;ELEVATION&quot;,&quot;LATITUDE&quot;,&quot;LONGITUDE&quot;    \<br>          ,&quot;DATE&quot;,&quot;MDPR&quot;,&quot;MDSF&quot;,&quot;DAPR&quot;,&quot;DASF&quot;,&quot;PRCP&quot;,&quot;SNWD&quot;,&quot;SNOW&quot;        \<br>          ,&quot;TMAX&quot;,&quot;TMIN&quot;,&quot;TOBS&quot;                                           /)     <br><br><br>  nfield = ind(FIELDS.eq.fldstr) + 1      ; field to be extracted<br>  print(&quot;fldstr=&quot;+fldstr+&quot; corresponds to field number &quot;+nfield)<br>  print(&quot;=====&quot;)<br>;***********************************************<br>; extract the values<br>;***********************************************<br><br>  sdat   = str_get_field(seldata1 , 2, &quot;,&quot;)<br>;*********Monthly average********************************<br> data   = tofloat( str_get_field(seldata1 , nfield, &quot;,&quot;) )*con<br>  data@_FillValue = -9999*con<br>  print(sdat+&quot; : &quot;+data)<br>  print(&quot;=====&quot;)<br>;print(data)<br>;return<br>tavg(i)=avg(data)<br>end do<br>print(tavg)<br>;tim(j,i)=tavg<br>end do<br><br><br><br></div>