Uncovering symmetric and asymmetric species associations from community and environmental data