The £60 million summer arrival from Leicester has started only 10 Premier League matches this season - and none since the turn of the year.
Guardiola said: "I am the reason. He is not absolutely guilty or he doesn't feel any special reason why. I am sad because he is training incredibly.
"He is an incredibly talented player but in that moment we have five strikers.
"For example the last games Leroy Sane hasn't played. We have incredible players, like for example Bernardo and Raz in top, top form.
"That is the only reason why. There's no particular reason, like being upset or something like that.
"He is a guy we are happy with, but unfortunately I am not kind with him, in the fact I cannot give him the minutes he deserves."