In V2 (Windows HPC Server 2008) the answer is yes with some dev work. You can get node's Added/Removed/Online/Offline/Reachable/Unreachable/Draining state change history from Get-HpcNodeStateHistory cmdlet, and then put together the node availability. If you are interested in the "Available" definition in HPC Server, it means a node is "Online" and "Reachable". So there is somehow tricky formula like
sum(TheTimeANodeBecomesUnavailable - TheTimeANodeBecomesAvailable) / sum(TheTimeANodeIsRemoved - TheTimeANodeIsAdded)
In V3 (Windows HPC Server 2008 R2) we are considering expose the hourly aggregated node availability data though reporting database view.
Feel free to let us know if you have further questions. Thanks.