Csv как разделить по столбцам
Перейти к содержимому

Csv как разделить по столбцам

  • автор:

A Simple Way of Splitting Large .csv Files

Katy Preen

In my work as a journalist, I’ll occasionally find a story that requires a little data analysis. Often they’re simple problems that require GCSE-level maths ability, or ‘A’ level at a push. If I encounter a data problem that I can’t solve, I’ll pay a data scientist to work it out for me. But data journalists will have to deal with large volumes of data that they need to analyse themselves. I’m relying on the extensive knowledge of Microsoft Excel I developed during my undergraduate degree, but I know that I will still be learning many new things as I go along. I encountered a seemingly impossible problem while working on a story about corporate real estate ownership, but I found an easy way to get around it.

We’ve all downloaded .csv files and opened them up in Excel to view as a spreadsheet (if you haven’t, you’re not missing much, but I digress). This is usually the right way of making sense of the mass of data contained within. You can also open them as text files, in which you’ll see the same data, but separated by commas. Usually, it just looks like a useless wall of text, but text files can do things that Excel files can’t in some cases. For example, they can display a more complete form of the data if Excel can’t handle it, and they can be edited by hand.

So what does this have to do with large .csv files in particular? Microsoft Excel can only display the first 1,048,576 rows and 16,384 columns of data. And at some point, you are going to encounter a .csv file with way more than that much within it. I chose to download the Commercial and Corporate Property Ownership Data from HM Land Registry for a story I’m working on about property investment funds in Manchester. This file gives details of every property title on record in the UK that is owned by a company or organisation, rather than private individuals — and there are over 3 million of them. It comes as a .csv file, great for opening in Excel normally — but 3 million+ rows is just too much for Excel to deal with.

Csv как разделить по столбцам

Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов для системных администраторов Pyatilistnik.org. В прошлый раз мы с вами подробно разобрали 10 методов как открыть командную строку. В сегодняшней публикации я хочу вас научить разбивать строки в CSV файле на столбцы, которые потом можно использовать в файлах Excel. Уверен, что многие системные администраторы часто работаю с экспортными данными в формате CSV.

Постановка задачи

Бьюсь об заклад, что у 99% средних и крупных организаций в России инфраструктура построена на использовании Active Directory. Активный каталог замечательная вещь и легко интегрируется в различные сторонние сервисы. Самая частая задача администратора, это получение отчетов или выгрузок по определенным критериям, например:

  • Получить список пользователей Active Directory с рядом атрибутов , чтобы в дальнейшем их вывести из эксплуатации
  • Получить список всех компьютеров или пользователей, кто не авторизовывался какое-то время. И так до бесконечности

Получить данные вы можете в разном виде, например в виде выдачи на самом экране, или же в сохраненный файл в формате txt или csv. CSV более распространенный, так как позволяет не только выгружать данные, но и еще их импортировать. Вроде бы все удобно, но есть одно но, когда вы захотите красиво перенести такие данные из csv, txt или экрана, у вас не будет форматирования или столбцов, все будет смешано в кучу, а это не удобно. Ниже я вас научу это обходить.

Структура файла CSV

Файл с разделителями-запятыми (CSV) представляет собой простой текстовый файл, который содержит список данных. Эти файлы часто используются для обмена данными между различными приложениями. Например, базы данных и менеджеры контактов часто поддерживают файлы CSV.

Эти файлы иногда могут называться символьно-разделенными значениями или файлами с разделителями-запятыми. В основном они используют запятую для разделения данных, но иногда используют другие символы, такие как точки с запятой. Идея состоит в том, что вы можете экспортировать сложные данные из одного приложения в файл CSV, а затем импортировать данные из этого файла CSV в другое приложение.

Вот пример такого строки с разделителями:

Структура файла CSV

теперь представьте, что таких строк сотни или тысячи, а вы хотите все скопировать в ваш Exсel и по столбцам, вот тут вы и поймете, что одностроковый формат требует преобразования. Благо, это делается очень быстро и просто. Вот пример моего тестового csv файла.

Как csv разделить по столбцам в Excel

Первым инструментом, который позволит из csv получить красивые столбцы и разбиение по ним, будет Excel. Откройте в Excel ваш файл csv.

  • Выделите первый столбец и перейдите на вкладку «Данные«
  • Найдите пункт «Текст по столбцам«

Как csv разделить +по столбцам в Excel

На первом окне мастера распределения текста по столбцам нажмите «Далее».

Как csv разделить по столбцам

Далее вам необходимо указать по каким критериям производить разбивку по столбцам, на выбор у вас будет:

  • Знак табуляции
  • Точка с запятой
  • Запятая
  • Пробел
  • Другой вариант

В моем примере CSV разделяет отдельные данные с помощью запятой. Тут же вы сразу видите, как это будет выглядеть в области «Образец разбора данных«.

Разделение CSV данных с запятой на столбцы

Далее при необходимости вы можете указать формат (Общий, текстовый, дата) и диапазон к которому будет применяться ваше преобразование. Нажимаем «Готово«.

Как csv разделить +по столбцам в Excel

На выходе я получил красивую таблицу, где есть разбивка по столбца. В таком виде мне уже удобнее оперировать данными.

Успешное разбиение csv данных по столбцам

Далее вам остается сохранить файл в формате xlsx и радуемся жизни.

Как csv разделить по столбцам через Google Таблицы

Не так давно я вам рассказывал про установку через групповую политику расширения для Google Chrome под названием «Редактирование файлов Office«. Это расширение позволяло работать с файлами Word, Excel и PowerPoint в Google Документах, Google Таблицах и Google Презентациях. Если вы через него откроете ваш файл CSV, то вы буквально в два клика сможете его разбить на столбцы. Для этого выберите меню «Файл — Сохранить в формате Google Таблиц«.

Как csv разделить по столбцам через Google Таблицы

Начнется переделывание формата CSV в формат Google Таблиц

переделывание формата CSV в формат Google Таблиц

На выходе вы получаете разделенный по столбцам документ.

разделенный по столбцам документ csv

Далее вы уже можете оперировать этими данными или же можете их сохранить в нужный формат. Если у вас изначально документ Google Таблиц содержит данные разделенные запятой в виде одной строки, то вы их можете преобразовать в столбцы вот таким методом. Открываете меню «Данные — Разделить текст на столбцы«

Как csv разделить по столбцам через Google Таблицы

Выбираете тип разделения, в моем случае запятая.

Выбор условия разьиения по столбцам в csv файле

Затем выбираете ваш столбец с данным и еще раз нажмите «Данные — Разделить текст на столбцы«

Разделить текст по столбцам в Excel

Приложение Excel позволяет разбивать текст в ячейках столбца на несколько подстрок и располагать их в отдельных колонках. При этом для разбивки используется специальный разделитель, который выбирается пользователем для каждого конкретного случая.

Для примера рассмотрим данные CSV файла. Каждая подстрока в нем разделена символом «точка с запятой» и помещена в двойные кавычки. Вставьте их в любое место Вашей рабочей книги:

Перед разбивкой данных требуется выделить нужный диапазон, а затем кликнуть по пиктограмме «Текст по столбцам» в области «Работа с данными» на ленте вкладки «Данные».

На экране будет отображено окно мастера распределения текста:

Разбить текст. Шаг 1

Весь процесс состоит из трех шагов.

На первом этапе требуется выбрать формат данных для разделения, а именно указать, содержит ли текст разделители, или каждый будущий столбец имеет свою фиксированною ширину, т.е. длину текста. Последний вариант рассматриваться не будет, так как он ничем не отличается от первого кроме следующего шага, где требуется самостоятельно выбрать на линейке ширину поля.

Выберите пункт «С разделителями» и нажмите кнопку «Далее».

Разбить столбец. Шаг 2

Следующим действием выбирается символ-разделитель. Им может быть любой из знаков, включая буквы и цифры.

Обратите внимание на то, что если разделители идут подряд, то каждый из них образует новый столбец, т.е. 2 таких символа создают 1 пустой столбец, 3 – 2 и т.д. Чтобы избавиться от этого часто нужного действия достаточно поставить галочку на поле «Считать последовательные разделители одним».

Может возникнуть ситуация, когда подстрока для создания столбца содержит символ-разделитель, который таковым не является. В подобных случаях строки должны быть заключены в одинарные либо двойные кавычки (в нашем примере исходных данных это присутствует), а в окне мастера нужно выбрать, какой ограничитель строк применить.

Имейте в виду то, что символы-разделители и ограничители удаляются из содержимого разделенных данных.

На любом описанным выше этапе можно нажать кнопку «Готово» для предоставления возможности приложению Excel самостоятельно завершить разделение текста в ячейках столбца. Но если Вы хотите контролировать весь процесс, то продолжайте нажимать «Далее».

Завершающим шагом является назначение форматирования новым колонкам и указания места для их расположения.

Разделение текста. Шаг 3

Из возможных настроек предоставлено только несколько форматов (типов данных), а поместить распределенный текст можно только на текущем листе.

Как открыть CSV в Excel: пошаговая инструкция

Умение открывать CSV файлы в Excel позволит анализировать и использовать документы с любым разделителем при работе с таблицами.

Видеоинструкция

Простой способ открыть CSV в Excel (Способ №1)

В примере будет использовать пример файла CVS, который разделен «,» (запятой). Можно скачать ниже:

Чтобы использовать его потребуется кликнуть правой клавишей мыши по документу и в выпавшем меню выбрать «Открыть с помощью»-«Microsoft Excel».

Открытие файла CSV в Excel через диалоговое меню

В итоге получаем следующий вид.

Открытый CSV файл в Excel

Чтобы превратить его в табличный открываем вкладку «Данные» и выбираем «Текст по столбцам».

Разделение открытого CSV по столбцам с разделителем

Далее выбираем «С разделителями».

Выбор разделителя для разбития текста по столбцах

Теперь осталось выбрать нужный формат (в примере это запятая) после чего переходим на следующий уровень.

Использование разделителя запятой для разделения файла данных CSV в Эксель

Важно! В нижней части имеется образец как будет выглядеть документ после преобразования.

Важно! Если разделителем является иной знак (не точка с запятой и не запятая) то необходимо использовать «Другой» и ввести нужный символ.

Кликаем на готово.

Завершения разделения запятой для разделения файла данных CSV в Эксель

Файл превратился в нужный формат.

Пример открытого файла CSV в Эксель

Открытие CSV сразу с разделением столбцов в Эксель (Способ №2)

В нужном листе кликаем на «Данные»-«Получение внешних данных» и в выпавшем меню выбираем «Из текста».

Открытие файла CSV в Эксель при помощи получения внешних данных из текста

Далее выбираем нужный нам файл.

Выбор нужного CSV файла для открытия в Ексель

Теперь аналогично способу №2 выбираем с разделителями.

Выбор разделителя для открытия CSV в таблице Эксель

Указываем нужный символ.

Выбор разделителя запятая для открытия CSV в таблице Эксель

Кликаем на готово.

Завершение выбора разделителя запятая для открытия CSV в таблице Excel

Через вкладку «Файл» (Способ №3)

Кликаем на кнопку «Файл» (левый-верхний угол).

Открытие кнопки Файл в Excel

В открывшемся меню нажимаем на «Открыть»-«Компьютер»-«Обзор».

Открытие CSV в Excel через вкладку файл

Открываем нужную папку и документ (в графе нужного типа файла можно поставить «Все файлы»).

Выбор подходящего файла CSV для открытия в Ексель

Далее проходим всю процедуру описанную в Способе 1 и 2 или же нажимаем на «Готово».

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *