Store shelves at several major retailers are bare as people stock up for coronavirus