Моя проблема заключается в обработке данных из больших файлов CSV.
Я ищу наиболее эффективный способ определить (то есть догадываться) тип данных столбца на основе значений, найденных в этом столбце. Я потенциально имею дело с очень грязными данными. Следовательно, алгоритм должен быть в некоторой степени устойчивым к ошибкам.
Вот пример:
arr1 = ['0.83', '-0.26', '-', '0.23', '11.23'] # ==> recognize as float
arr2 = ['1', '11', '-1345.67', '0', '22'] # ==> regognize as int
arr3 = ['2/7/1985', 'Jul 03 1985, 00:00:00', '', '4/3/2011'] # ==> recognize as date
arr4 = ['Dog', 'Cat', '0.13', 'Mouse'] # ==> recognize as str
Итог: я ищу пакет python или алгоритм, который может обнаруживать либо
- схема файла CSV или даже лучше
- тип данных отдельного столбца в виде массива
Метод угадывания типов данных, представленных в настоящее время в виде строк, идет в одном направлении. Я беспокоюсь о производительности, хотя, поскольку я, возможно, имею дело со многими большими электронными таблицами (откуда берутся данные)