'numpy .int32' объект не имеет атрибута 'apply' - PullRequest
0 голосов
/ 01 апреля 2020
  1. Попытка извлечь числовую c часть из столбца dtype ('O') и получить извлеченные данные в новом столбце или заменить существующий столбец.

  2. В этом процессе метод apply не работал для приведенного ниже кода. При условии отслеживания также

код

def dpr_size(data_size):
    split_size = re.split('(\d*.*\d)', data_size)
    size = float(split_size[0])
    return float(size)

df1['size_new'] = df1.size.astype('str').apply(dpr_size)

Отслеживание

AttributeError Traceback (последний вызов был последним) в () 5 return float (size) 6 ----> 7 df1 ['size_new'] = df1.size.apply (dpr_size)

AttributeError: у объекта 'numpy .int32' нет атрибута 'apply'

Перепробовал много других альтернатив, и теперь работает приведенный ниже код. код df1['size'] = df1['size'].astype('str') for i in range(len(df1['size'])): split_size = re.split('(\d*.*\d)', df1['size'][i])[1:] df1['size'][i] = split_size[0]

Однако хотите выяснить, почему «apply» не работает

Данные

...