Adding a Property to a CollectionProperty After Creating it
You can add properties to the PropertyGroup as follows:

bpy.types.Scene.particle_instancer[1]['type'].my_prop = bpy.props.StringProperty()




Internally, your bpy.types.Scene.particle_instancer is a tuple that will look like this: 

(&lt;built-in function CollectionProperty&gt;, {'type': &lt;class '__main__.particle_instancer'&gt;, 'attr': 'particle_instancer'})


So, you can index the dict giving you access to the particle_instancer class, where you can add properties.

I got the idea to access the 'type' from this answer: https://blender.stackexchange.com/a/28091/20051