#pandas #dataframe #loops
Вопрос:
for image_file in glob.iglob('C:\pathtofolder\*.jpg'):
HP, HR, Glass, EV, FV, Glared, S, L = faceApp(image_file)
faceDeets = pd.DataFrame({'HP': [HP], 'HR': [HR], 'Glass': [Glass], 'EV': [EV], 'FV': [FV], 'Glared': [Glared], 'S': [S], 'L': [L]})
time.sleep(5)
Я хотел бы создать фрейм данных для каждого файла image_file. Приведенный выше код возвращает значения только для одного изображения. Созданный фрейм данных
Ответ №1:
Ты можешь попробовать это:
data = []
for image_file in glob.iglob('C:\pathtofolder\*.jpg'):
data.append(faceApp(image_file))
time.sleep(5)
df = pd.DataFrame(data, columns=['HP', 'HR', 'Glass', 'EV', 'FV', 'Glared', 'S', 'L'])
Комментарии:
1. Ошибка типа: не удается объединить объект типа ‘<class ‘str’>’; допустимы только объекты серии и фрейма данных. Я получил эту ошибку типа
2. @MahejabeenNidhi, я все исправил.
3. Еще раз спасибо! Я действительно зациклился на этом. Теперь есть ошибка ValueError: Форма передаваемых значений (8, 1), индексы подразумевают (8, 8)
4. Я попытался исправить это с помощью data = np.array(данные).reshape(1,8), и это возвращает только одну строку
5. Моя вина! Действительно извините, я забыл добавить данные… Теперь это должно сработать. Если это не сработает, я уволен 🙂