Скорее всего, это связано с исходным форматированием в Excel (в частности, форматы чисел «Учет» и «Стиль запятой» делают это, потому что он выравнивает символ валюты или знак как часть форматирования). В этих случаях вы также заметите, что вставка из Excel включает начальный и конечный пробельные символы.
Dataprep не тратит слишком много времени на размышления за вас — в этом случае они придерживаются консервативной точки зрения, предоставляя вам необработанные данные и позволяя вам решить, нужно ли вам их переформатировать.
Чтобы убедиться, что Dataprep не работает неправильно, вам нужно всего лишь открыть CSV в текстовом редакторе — вы, скорее всего, увидите те же самые строки в кавычках. Это также распространено, когда другие системы генерируют CSV с примененным числовым форматированием (заставляя значения заключать строки в кавычки в CSV). Точно так же любые текстовые столбцы, содержащие запятые, обычно заключаются в кавычки (при необходимости, так как это обычно разделитель и имеет особое значение).
К счастью, это легко исправить. Вам также придется заменить запятые, если вы хотите использовать десятичный тип.
Простые замены:
Интерфейс:
- Формат > Обрезать начальные и конечные кавычки
- Формат > Обрезать начальные и конечные пробелы
- «Заменить» > «Текст или шаблон» (замените «,»; убедитесь, что вы установили флажок «Соответствовать всем вхождениям»
Результирующий скрипт Wrangle:
textformat col: col1 type: trimquotes
textformat col: col1 type: trimwhitespace
replacepatterns col: col1 with: '' on: ',' global: true
Регулярное выражение (одноэтапная замена):
replacepatterns col: col1 with: '' on: /[^0-9.]/ global: true
В смешанной команде с людьми, которые не знают регулярных выражений, первое иногда немного понятнее и менее пугающее, но в остальном его намного проще сделать за один шаг.
person
justbeez
schedule
04.04.2019