How to access data related to individual particles?
As Sambler said, Animation Nodes is your best option. Here are some examples:

Controlling the size of individual particles based on time (They get bigger as time passes):



Controlling the rotation of individual particles based on a random vector.



Wiggling the size of instances cube: