"Three million" and "3 x 106" potentially mean different things. Since the original author wrote "3 x 106", my bias would be to leave it (other than changing the lower case x to a multiplication sign) unless you are confident that you aren't changing the meaning.
In standard scientific writing, "3 x 106" often means that there was a measurement with only a single significant digit of precision. In other words, the implied error bars on this measurement are ± 5 x 105 which means that the measurement was quite imprecise. A reported value of "3.00 x 106" would indicate a measurement with three significant digits of precision in which case the implied error bars would be ± 5 x 103. Writing the text "three million" or the number "3 000 000" potentially discards that nuance. On the other hand, the text "three million" or the number "3 000 000" tends to imply an intentionally approximate value rather than the result of a particular measurement. If I say that "the gas was three million times as hot at the end of the experiment", it is clear that I am giving a rough number for context rather than a precisely measured value that should be used in calculations.
Assuming that the different variations do not change what is being communicated, what numbers need to be compared with each other. If the three million value is compared elsewhere with measurements of one hundred thousand and of one billion, writing the numbers in words is problematic because readers tend to focus on the leading parts (3, 100, and 1) rather than the million, thousand, and billion. It can be easy for a reader to miss the fact that three million is 3 times more than one hundred thousand and three one-thousandths of one billion. "One billion" often feels smaller than "three million" or "one hundred thousand". On the other hand, when you use scientific notation, it is much easier to appreciate the difference in scale between 3 x 106, 1 x 105, and 1 x 109.
Beyond that, your style guide may provide some rules about how to present various types of numbers.