FWIW, though macros cannot be mapped, as others have mentioned, they can be manipulated with more macros, if you're willing to write them. This is Lisp, after all. :)
POC:
(defmacro my-use-packages (&rest packages) "Ensure and defer PACKAGES using `use-package'." (declare (indent defun)) (macroexp-progn (mapcar (lambda (package) `(use-package ,package :ensure :defer)) packages))) (my-use-packages 2048-game alert async regex-tool)
expands to
(progn (use-package 2048-game :ensure :defer) (use-package alert :ensure :defer) (use-package async :ensure :defer) (use-package regex-tool :ensure :defer))
Now, whether this pattern is actually worth the bother or benefits anyone is a different matter.