I have read lots of places that HTTP Patch is non-idempotent. Can someone explain me why it is non-idempotent ? 
Because as per the definition - Idempotent methods may or may not change the resource state, but repeated requests should have no further side effects after the first request.
How a repeated PATCH request can change the Resource state?