[Error] ValueError: num_samples should be a positive integeral value, but got num_samples=0

Has anyone encountered and solved the below error:

Error:

ValueError: num_samples should be a positive integeral value, but got num_samples=0

Notebook

copied code from lesson2-download.ipynb, but used on my own dataset

CODE

np.random.seed(42)
bs=20
data = ImageDataBunch.from_folder(path, train=".", valid_pct=0.2, ds_tfms=get_transforms(), size=224, \
                                  num_workers=4, bs=bs)

ERROR:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-7-167e0c12f957> in <module>
      1 data = ImageDataBunch.from_folder(path, train=".", valid_pct=0.2, ds_tfms=get_transforms(), size=224, \
----> 2                                   num_workers=4, bs=bs)

/opt/anaconda3/lib/python3.6/site-packages/fastai/vision/data.py in from_folder(cls, path, train, valid, test, valid_pct, **kwargs)
    298         if test: datasets.append(ImageClassificationDataset.from_single_folder(
    299             path/test,classes=datasets[0].classes))
--> 300         return cls.create(*datasets, path=path, **kwargs)
    301 
    302     @classmethod

/opt/anaconda3/lib/python3.6/site-packages/fastai/vision/data.py in create(cls, train_ds, valid_ds, test_ds, path, bs, ds_tfms, num_workers, tfms, device, collate_fn, size, **kwargs)
    283         if ds_tfms or size: datasets = transform_datasets(*datasets, tfms=ds_tfms, size=size, **kwargs)
    284         dls = [DataLoader(*o, num_workers=num_workers) for o in
--> 285                zip(datasets, (bs,bs*2,bs*2), (True,False,False))]
    286         return cls(*dls, path=path, device=device, tfms=tfms, collate_fn=collate_fn)
    287 

/opt/anaconda3/lib/python3.6/site-packages/fastai/vision/data.py in <listcomp>(.0)
    282         if test_ds is not None: datasets.append(test_ds)
    283         if ds_tfms or size: datasets = transform_datasets(*datasets, tfms=ds_tfms, size=size, **kwargs)
--> 284         dls = [DataLoader(*o, num_workers=num_workers) for o in
    285                zip(datasets, (bs,bs*2,bs*2), (True,False,False))]
    286         return cls(*dls, path=path, device=device, tfms=tfms, collate_fn=collate_fn)

/opt/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataloader.py in __init__(self, dataset, batch_size, shuffle, sampler, batch_sampler, num_workers, collate_fn, pin_memory, drop_last, timeout, worker_init_fn)
    800             if sampler is None:
    801                 if shuffle:
--> 802                     sampler = RandomSampler(dataset)
    803                 else:
    804                     sampler = SequentialSampler(dataset)

/opt/anaconda3/lib/python3.6/site-packages/torch/utils/data/sampler.py in __init__(self, data_source, replacement, num_samples)
     62         if not isinstance(self.num_samples, int) or self.num_samples <= 0:
     63             raise ValueError("num_samples should be a positive integeral "
---> 64                              "value, but got num_samples={}".format(self.num_samples))
     65         if not isinstance(self.replacement, bool):
     66             raise ValueError("replacement should be a boolean value, but got "

ValueError: num_samples should be a positive integeral value, but got num_samples=0

That is the code before I run resnet50:

learn = create_cnn(data, models.resnet50, metrics=error_rate)

Is the train dataset in “.” ?