Frames - http://acowley.github.io/Frames/ - is built on top of vinyl and provides one way to access data either as an array of structures or a structures of arrays. I'm on my phone (hence the use of top posting) so I can't productively check whether it allows the kind of filtering you were asking for.