Is there a better way to interpolate a value from 0 to 1 back to 0?

Currently I’m doing this:

t *= Mathf.PI;
Mathf.Lerp(0.0,1.0,Mathf.Sin(t));

But I feel like this is wasteful. Is there a more efficient way to accomplish this?

Mathf.PingPong