it could be many reasons, you better debug your code and check the values which falling and try to find why those values failed to convert.
for example your input strings may have extra spaces or empty values or some other characters, thousand separators etc...
if you not sure the input is number or not you can use Double.TryParse method to parse the string as double. it will not give exception in case of failed to parse. for example
string inputstring = column0Array1[i].Trim();
double result=0;
if (!string.IsNullOrEmpty(inputstring))
{
double value;
if (Double.TryParse(inputstring, out value))
{
result= value;
}else
{
}
}