The intent of the two ships were very different. The Iowa class battleships were designed and built as fleet support/escort, the Yamato class was designed and built to knock out U.S. battleships in an "Jutland" style of engagement (strait line, conventional engagement).
The Yamato was bigger (72k tons vs 58k tons), had thicker armor (max 650mm vs 500mm) , and more powerful longer ranged guns (18.1inch over 42km vs 16inch over 38km) then the Missouri, but the Missouri was much faster (27 kts vs 35 kts flank speed).
The Yamato had the best optical targeting system in the world. Even today, the optics on Japanese cameras and telescopes are unmatched. However, the Missouri had much better radar. During bad weather, this would give an advantage to the Missouri, but otherwise the Yamato would have just as good fire control. The Japanese also had better night fighting techniques than we did.
My opinion is that in an one on one fight, there is no battleship in history that could have stood against the Yamato. However, the age of big naval linefires were pretty much over by WW2, replaced by air power. The Japanese were also too cautious with their flagships, the Yamato and her only sister the Musashi, so they never saw the action they were designed for. In fact, the Yamato only fired her guns on another ship *once* in her history, against an escort carrier, and the Musashi never had such a chance.