Statistically those other factors don't hold up. When business models change, people get different jobs in the same area. And tornado alley, New Orleans, northeast blizzards and west coast earthquakes conclusively prove that certain races most assuredly do not desert an area en masse due to natural causes. No evidence exists for cultural tastes. But civil unrest, that's the key.
White flight is traced clearly to the race riots of the 60s. Civil unrest, fear of safety and fear that the perception of an area as being unsafe will trash property values. There's not a single shred of evidence of "xxxxx flight" being tied to anything other than race. Some members of one ethnic group feel outnumbered, unsafe, see the handwriting on the wall and think the numbers will only get worse, so they jump out. Conditions then look worse and a few more follow. And a few more and poof, "xxxx flight". It's called white flight because it happens most often with middle class white abandoning areas starting to go downhill, but it does happen other ways too. Asian and hispanic and black communities can flee too if circumstances are right. But it's never about anything except race and perception of safety because of race. One group feels unsafe and bolts if they can.