The 28-year-old came into the side after Bhuvneshwar Kumar injured his hamstring and Shami has retained his place despite Kumar regaining his fitness.
"I failed (the yo-yo test), that's true," Shami told reporters, referring to the endurance test employed by the Indian team to weed out unfit players. "The one thing is I have improved my fitness a lot."
The yo-yo test demands players run back and forth between cones spaced 20 metres apart with increasing speed and reduced time available to complete each shuttle.
News that makes sense
Your trusted source for staying up-to-date with the world around you. Get free daily news updates and analysis, straight to your inbox.
"I'm in my comfort zone, I have lost weight, my rhythm is good. Everything is going well," Shami added.
"I am trying to ensure that I maintain that rhythm (and) that diet that I have been following. The moment I lost weight I found a rhythm for myself, there is a good feeling.
"Along with that... there is less tiredness so obviously the speed will increase. As far as skill is concerned, I have full faith in myself that whatever be the wicket I can express my abilities."
India's strength and conditioning coach Shankar Basu had said last week that failing the test was a blessing in disguise for Shami.
"After that, he was a changed man, he was so determined," Basu said. "The best part is he has changed his entire training regimen. I think training is now part of his lifestyle, which never used to be the case before."
India, second in the World Cup standings, need one more win to secure a semi-final spot and will play hosts England next on Sunday at Edgbaston.
(Reporting by Rohith Nair in Bengaluru; editing by Sudipto Ganguly)
