✨ ベストアンサー ✨
(2)って、goneじゃだめなんですか?? → はい、ダメです。
なぜなら、go(行く)は動作を表す動詞なので、for two years(2年間)ずっと行くことができないからです。
※have/has gone(現在完了:完了・結果)
一方be動詞は状態を表す動詞なので、for two years(2年間)ずっとその状態を継続することができます。
従って、My uncle has been(現在完了:継続) in Canada for two years. (私の叔父は2年間ずっとカナダにいます。今もいます。)となります。
参考にしてください。
You're welcome!😊
知らなかったです!ありがとうございます!!