Uh, am I missing something? This seems trivial.
int GetChangeIndex(DataRow row){
double value = double.Parse(row.Cells[0].Value);
for(int i = 1; i < row.Cells.Length; i++){
double thiscell = double.Parse(row.Cells[i].Value);
if(value != thiscell) return i;
else value = thiscell;
}
return -1;
}