Heat the rice and oil in a medium saucepan over medium-high heat. Cook, stirring occasionally, until translucent, lightly golden, and fragrant, 2 to 3 minutes.
Add 1/2 cup water first as it will be absorbed quickly.
Stir in the coconut milk, salt, shredded coconut, sliced almonds and then bring to a boil. Reduce the heat to a simmer, cover, and cook until all the liquid is absorbed and the rice is cooked, about 20 minutes. Remove lid and with a fork. Stir in the butter.
Cover and let steam for 5 to 10 minutes before serving.