Can not load from csv

Hi fastai teachers and friends,

I did try to use:
data = ImageDataBunch.from_csv(path, folder='train', csv_labels='train.csv', ds_tfms=tfms, size=32)

to load data, but it return error.


TypeError Traceback (most recent call last)
1 df = pd.read_csv(‘E:/WORKSPACES/python/DATA/vn_celeb_face_recognition/train.csv’)
2 df.head()
----> 3 data = ImageDataBunch.from_csv(path, folder=‘train’, csv_labels=‘train.csv’, ds_tfms=tfms, size=28)

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\vision\ in from_csv(cls, path, folder, label_delim, csv_labels, valid_pct, fn_col, label_col, suffix, delimiter, header, **kwargs)
128 df = pd.read_csv(path/csv_labels, header=header, delimiter=delimiter)
129 return cls.from_df(path, df, folder=folder, label_delim=label_delim, valid_pct=valid_pct,
–> 130 fn_col=fn_col, label_col=label_col, suffix=suffix, **kwargs)
132 @classmethod

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\vision\ in from_df(cls, path, df, folder, label_delim, valid_pct, fn_col, label_col, suffix, **kwargs)
117 src = (ImageList.from_df(df, path=path, folder=folder, suffix=suffix, cols=fn_col)
118 .split_by_rand_pct(valid_pct)
–> 119 .label_from_df(label_delim=label_delim, cols=label_col))
120 return cls.create_from_ll(src, **kwargs)

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\ in _inner(*args, **kwargs)
459 self.valid = fv(*args, from_item_lists=True, **kwargs)
460 self.class = LabelLists
–> 461 self.process()
462 return self
463 return _inner

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\ in process(self)
513 “Process the inner datasets.”
514 xp,yp = self.get_processors()
–> 515 for ds,n in zip(self.lists, [‘train’,‘valid’,‘test’]): ds.process(xp, yp, name=n)
516 #progress_bar clear the outputs so in some case warnings issued during processing disappear.
517 for ds in self.lists:

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\ in process(self, xp, yp, name)
672 def process(self, xp:PreProcessor=None, yp:PreProcessor=None, name:str=None):
673 “Launch the processing on self.x and self.y with xp and yp.”
–> 674 self.y.process(yp)
675 if getattr(self.y, ‘filter_missing_y’, False):
676 filt = array([o is None for o in self.y.items])

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\ in process(self, processor)
73 if processor is not None: self.processor = processor
74 self.processor = listify(self.processor)
—> 75 for p in self.processor: p.process(self)
76 return self

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\ in process(self, ds)
330 ds.classes = self.classes
331 ds.c2i = self.c2i
–> 332 super().process(ds)
334 def getstate(self): return {‘classes’:self.classes}

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\ in process(self, ds)
40 def init(self, ds:Collection=None): self.ref_ds = ds
41 def process_one(self, item:Any): return item
—> 42 def process(self, ds:Collection): ds.items = array([self.process_one(item) for item in ds.items])
44 PreProcessors = Union[PreProcessor, Collection[PreProcessor]]

E:\WORKSPACES\Miniconda\envs\fastai\lib\site-packages\fastai\ in array(a, dtype, **kwargs)
270 if np.int_==np.int32 and dtype is None and is_listy(a) and len(a) and isinstance(a[0],int):
271 dtype=np.int64
–> 272 return np.array(a, dtype=dtype, **kwargs)
274 class EmptyLabel(ItemBase):

TypeError: int() argument must be a string, a bytes-like object or a number, not ‘NoneType’

I can not debug out what the problem it is. Could you tell me how to solve it?

You can download the data to try here:


I see u are giving an incorrect csv_labels