Невозможно преобразовать строку в число с плавающей точкой после использования pandas dataframe - PullRequest
1 голос
/ 19 марта 2019

У меня есть код, в котором я беру каталог 3D-изображений, преобразую все изображения в массив из одной строки и сохраняю их в одном CSV-файле.У меня есть 45 каталогов изображений:

IMG_DIR = "\\3504"
for img in os.listdir(IMG_DIR):
    img_array = cv2.imread(os.path.join(IMG_DIR,img), cv2.IMREAD_GRAYSCALE)
    img_array = (img_array.flatten())
    img_array = img_array.reshape(-1, 1).T
    print(img_array)
    with open('\\3504.csv', 'ab') as f:
        np.savetxt(f, img_array, delimiter = ',')

Я могу запускать эти отдельные файлы .csv через неконтролируемую обучающую сеть.Однако я хочу объединить все 45 .csv файлов в 1 .csv, чтобы сравнить трехмерные объемы друг с другом.У меня есть этот код для объединения всех .csv:

filenames = glob("C:\\Users\\rzara\\Desktop\\resized\\arrays\\*.csv")
dataframes = [pd.read_csv(f, header = None) for f in filenames]
pd.DataFrame(dataframes).to_csv("C:\\Users\\rzara\\Desktop\\resized\\arrays\\Combined.csv", header = None)

После того, как я объединяю файлы с использованием кадра данных pandas, при попытке запустить код я получаю сообщение об ошибке:

ValueError: could not convert string to float: '  52.0  38.0  31.0 ... 27.0  27.0  27.0\n\n[20 rows x 2500 columns]'

Я попытался отредактировать .csv вручную и удалить все лишние символы, пробелы и возвраты, но затем получил ошибку:

ValueError: could not convert string to float: '...'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...