Reading data into solardata it should probably read as
For[i=1, i < n + 1, i++, If [StringTake[ToString[solardata[i][i],2]<4, a[i][1] = 1, a[i][1]=2]]
your construct a from solardata, not a from a itself.