The board's senior selection committee, which met here earlier in the day under chairman M.S.K. Prasad left paceman Umesh Yadav out while recalling Mohammed Shami in the squad.
Shami last played an ODI against Australia in September 2017.
The squad also saw the return of Kedar Jadhav, who suffered a hamstring injury that kept him out of the limited-overs series against Sri Lanka.
Mumbai pacer Shardul Thakur also found a place in the squad after missing the limited-overs leg of the Sri Lanka series due to a shoulder injury.
The Virat Kohli-led squad includes as many as 10 frontline batsmen, including Hardik Pandya and Mahendra Singh Dhoni while the young wrist spin duo of Yuzvendra Chahal and Kuldeep Yadav were rewarded for their impressive ODI form.
Asked about the continued absence of the experienced duo of Ashwin and Jadeja, Prasad said: "We have enough domestic matches. They have played enough cricket and have enough number of wickets under the belt," he said.
"(The) only issue is we have tried these guys (the young spinners) and time and again they are winning games for you, so it makes sense to continue with these guys for some time."
Left-arm spinner Axar Patel was also included in the squad which surprisingly left opener Lokesh Rahul, despite his back to back half centuries in the first two T20 Internationals against Sri Lanka.
Ahead of the ODIs, India will start their tour with the three-Test series against the Proteas, starting January 5 in Capetown while the second (January 13-17) and third (January 24-28) Tests will be played in Centurion and Johannesburg, respectively.
The ODI series gets underway on February 1 in Durban, four days after the conclusion of the third Test. The second ODI will be played in Centurion on February 4, the third in Cape Town on February 7, while the fourth and fifth ODIs will be held on February 10 and 13 in Johannesburg and Port Elizabeth respectively.
The final ODI will be played in Centurion on February 16, followed by a three-match T20I series which concludes on February 24.
India ODI squad: Virat Kohli (Captain), Rohit Sharma, Shikhar Dhawan, Ajinkya Rahane, Shreyas Iyer, Manish Pandey, Kedar Jadhav, Dinesh Karthik, Mahendra Singh Dhoni (WK), Hardik Pandya, Axar Patel, Kuldeep Yadav, Yuzvendra Chahal, Bhuvneshwar Kumar, Jasprit Bumrah, Mohammed Shami, Shardul Thakur.
First Published: December 24, 2017, 9:43 AM IST