The Portugal star will not feature at the Bernabeu, while the former PSG coach has stressed that he does not have a problem with Sergio Ramos, who was sent off in midweek
The Portugal international picked up a thigh injury in Madrid's 5-0 away win over Almeria last week and consequently missed the Champions League win against Galatasaray.
Ronaldo was initially expected to return to the match squad for this weekend's encounter with Valladolid, but Ancelotti has announced that the 28-year-old will remain on the sidelines.
"Ronaldo is fully recovered. He took part in training, but did not look entirely comfortable. That's why we have decided not to take any risks," Ancelotti said at a press conference.
"Angel Di Maria will take his place against Valladolid."
The Italian then went on to dismiss suggestions that he is unhappy with Sergio Ramos following the defender's red card against Galatasaray on Wednesday.
"I don't have a problem with Sergio and he doesn't have a problem with me," the Italian declared. "I only told him to watch the space behind him on the pitch. It was a tactical chat.
"Would we take €65 million for Ramos? No. He is one of the best centre-backs in the world and we need him. He brings quality and experience."
Ancelotti also briefly discussed the future of Fabio Coentrao, who was close to joining Manchester United during the summer transfer window, and stressed that the Portuguese will not be allowed to depart the Spanish capital.
"Coentrao will not leave Madrid in January," the former Chelsea boss stated. "He asked us to be allowed to leave in the summer and we told him that we wanted him to stay. He has not asked for a transfer again."
Coentrao, 25, has a contract with Madrid until June 2017.