Импорт csv и txt файлов в Excel c помощью Power Query | statanaliz.info

Импорт csv и txt файлов в Excel c помощью Power Query

Одним из популярных источников для импорта в Power Query являются файлы типа .csv или .txt. Традиционные методы импорта и объединения текстовых файлов довольно неуклюжи и отнимают много времени. Однако применение Power Query многократно облегчает решение проблемы. Пусть у нас есть отчет о продажах за январь в формате .csv. Задача в том, чтобы импортировать его в Excel.

Создадим запрос Power Query (в Excel 2016) Данные – Скачать и преобразовать – Создать запрос – Из файла – Из CSV (либо Из текста, если импортируете из .txt).

Создание запроса Power Query на csv файл

В открывшемся окне указываем путь к файлу. Далее в предпросмотре убеждаемся, что выбран нужный файл, и нажимаем Изменить, чтобы попасть в редактор Power Query.

Редактор Power Query

Power Query распознал и разделил данные по столбцам. Также автоматически выполнены шаги:

• Первая строка повышена в заголовки

• Изменен тип для каждого столбца

Если обработки не требуется, то результат можно выгружать в книгу Эксель Главная – Закрыть – Закрыть и загрузить.

Кнопка загрузки данных из Power Query

На новом листе создается Таблица Excel.

Данные из Power Query в Таблице Excel

Теперь можно проводить анализ внутри Excel. К этому мы еще вернемся. Прошел месяц, и у нас появился такой же файл .csv за февраль. Возникает вопрос, как объединить данные за два месяца? В Power Query для этого есть специальные инструменты.

Уберем пока из листа Excel данные за январь. Для этого в панели запросов через правую клавиши выбираем Загрузить в…, где меняем настройки выгрузки на Только соединение.

Создание для запроса только соединения

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

Делаем новый запрос на файл за февраль и сразу создаем только соединение.

Задание параметров выгрузки для запроса Power Query

Теперь у нас два запроса, из которых нужно сделать общий, объединяющий два файла.

В Power Query есть два типа объединения запросов: Добавление (Append) и Объединение (Merge). Нас интересует добавление, т.к. таблицы должны быть сложены вместе (одна под другой). Объединение нужно для слияния запросов по ключевому полю, но об этом в другой раз.
Сейчас заходим Главная – Скачать и преобразовать – Создать запрос – Объединить запросы – Добавить.

Создание нового запроса через добавление

Далее нужно выбрать добавляемые запросы.

Добавление запросов

Следует понимать две вещи.

• Добавлять можно только запросы (а не Таблицы Excel)

• Запрос в верхнем поле будет первым сверху

Добавить можно было бы и больше запросов, выбрав в верхней строке Три таблицы или больше, но у нас только два. Нажимам ОК. Создается объединенный запрос под названием Append1.

Объединенный запрос

Изменим название на Отчет о продажах и выгрузим данные в Excel (Главная – Закрыть – Закрыть и загрузить). Итого получим три запроса.

Три запроса

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

Сводная таблица по данным из Power Query

Через месяц появился файл за март, и вы также решили добавить его в общий отчет и сводную таблицу. Создаем запрос к новому файлу Март.csv. Затем его нужно добавить в запрос Отчет о продажах. Однако, если повторить все шаги с добавлением, то будет создан новый общий запрос, который уже не имеет смысла, т.к. сводная таблица строится по данным из запроса Отчет о продажах. Поэтому нужно зайти в редактирование запроса Отчет о продажах и уже там добавить новый запрос за март. В редакторе Power Query выбираем Главная – Комбинировать – Добавить запросы. В окне добавления теперь только одно поле, т.к. первый запрос уже определен. Нужно выбрать лишь добавляемый.

Добавление нового запроса в объединенный

Нажимаем ОК и снова выгружаем обновленные данные в Excel (Главная – Закрыть – Закрыть и загрузить). Теперь в Таблице Excel находятся данные за три месяца. Нужно только обновить сводную таблицу.

Для импорта новых файлов нужно будет повторить все действия:

• создание нового запроса

• добавление его в объединяющий запрос Отчет о продажах

• выгрузка в Excel

• обновление сводной таблицы.

Несмотря на то, что таким образом можно консолидировать данные из многих файлов, был бы здорово, если бы они сами добавлялись в сводный запрос. Так тоже можно.

Импорт из папки

Источником в Power Query могут быть не только отдельные файлы, но и целая папка со всем ее содержимым. Далее дело следующей техники.

Создадим папку Данные о продажах csv и поместим в нее сразу три файла за январь, февраль и март. Сделаем запрос к этой папке Данные – Скачать и преобразовать – Создать запрос – Из папки. В следующем окне указываем путь. Адрес лучше заранее скопировать и затем вставить, чем искать в проводнике. В редакторе Power Query мы увидим такую таблицу.

Запрос к папке в редакторе Power Query

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

Следующий шаг не является обязательным, но он позволит избежать некоторых возможных проблем в будущем. Нужно понимать, что все содержимое указанной папки будет извлечено с помощью запроса Power Query. И если туда попадет какой-нибудь, например, файл Excel, то запрос «поломается» и выдаст ошибку. Поэтому опытные пользователи создают «защиту», чтобы файлы с другим расширением отфильтровывались.

Идея в том, чтобы в столбце Extension поставить фильтр на расширение .csv. Чтобы случайно не отфильтровать файлы .CSV, сделаем все буквы для столбца Extension маленькими. Для этого выделяем столбец, далее через правую кнопку мыши Преобразование – нижний регистр. Переходим к установке фильтра. Если в выпадающем списке фильтра поставить переключатель на значение .csv, то у нас ничего не получится, т.к. при единственном типе файлов будет автоматически выделен пункт Выбрать все. Поэтому выбираем Текстовые фильтры – Равно… и указываем .csv (обязательно с точкой впереди).

Фильтр файлов .csv

Теперь случайное добавление в указанную папку файлов Excel не повлияет на работу запроса. Этот шаг, повторюсь, необязательный, но лучше прислушаться к совету опытных пользователей.

Приступим к извлечению данных. Содержимое файлов скрыто в колонке Content за значением Binary.

Колонка Content

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

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

Иконка разворачивания бинарных файлов

Это кнопка загрузки двоичного (бинарного) файла. Жмем. И о чудо! Содержимое всех трех файлов один за другим выгружается в единую таблицу.

Выгрузка бинарных файлов из папки в Power Query

Однако на этот раз потребуется вручную внести некоторые корректировки.

• Удалим последний шаг Измененный тип

Преобразование – Использовать первую строку в качестве заголовков

• Правой кнопкой мыши по полю Дата – Тип изменения – Дата

• Удерживая Shift, выделяем два столбца Наименование и Менеджер, затем через правую клавишу мыши Тип изменения – Текст

• Через Shift выделяем остальные столбцы Цена, Стоимость, Комиссия – правая клавиши мыши – Тип изменения – Десятичное число

• Правой кнопкой мыши по полю Дата – Удалить ошибки

Главная – Закрыть – Закрыть и загрузить

Таким образом, мы получаем таблицу с единым заголовком, сделанную из трех файлов. На ее основе создадим сводную таблицу.

power query csv 19 1

Сводная таблица построена по 116 строкам. Таким же образом можно было бы объединить и 10 файлов с сотнями тысяч строк.

Добавление в запрос новых файлов и обновление сводной таблицы

Через два месяца в наше распоряжение поступило еще два файла с данными за апрель и май. Их также требуется добавить в сводную таблицу.

И вот здесь наступает момент истины. Все что нужно, это закинуть новые файлы в указанную папку и на ленте во вкладке Данные нажать Обновить все. Первое нажатие обновит все запросы, второе – сводные таблицы.

Обновление данных из папки

Power Query вновь обратился в папку по указанному адресу, затащил к себе все файлы, раскрыл их, повторил все шаги обработки и выгрузил в Excel. Второе нажатие кнопки обновило сводную таблицу.

Следует только помнить, что для объединения подобным образом таблиц из разных текстовых файлов необходимо полное совпадение заголовков, иначе они автоматически разведутся по разным столбцам.

Серия видеоуроков о Power Query.

Редактировать запись

 Редактировать в ElementorПереключиться на черновикПредпросмотр(откроется в новой вкладке)ОбновитьДобавить заголовок

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

Взаимосвязь двух переменных проявляется в совместной вариации: при изменении одного показателя имеет место тенденция изменения другого. Такая взаимосвязь называется корреляцией, а раздел статистики, который занимается взаимосвязями – корреляционный анализ.

Корреляция – это, простыми словами, взаимосвязанное изменение показателей. Она характеризуется направлением, формой и теснотой. Ниже представлены примеры корреляционной связи.

Разные типы корреляции

Далее будет рассматриваться только линейная корреляция. На диаграмме рассеяния (график корреляции) изображена взаимосвязь двух переменных X и Y. Пунктиром показаны средние.

Линейная корреляция

При положительном отклонении X от своей средней, Y также в большинстве случаев отклоняется в положительную сторону от своей средней. Для X меньше среднего, Y, как правило, тоже ниже среднего. Это прямая или положительная корреляция. Бывает обратная или отрицательная корреляция, когда положительное отклонение от средней X ассоциируется с отрицательным отклонением от средней Y или наоборот.

Линейность корреляции проявляется в том, что точки расположены вдоль прямой линии. Положительный или отрицательный наклон такой линии определяется направлением взаимосвязи.

Крайне важная характеристика корреляции – теснота. Чем теснее взаимосвязь, тем ближе к прямой точки на диаграмме. Как же ее измерить?

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

Формула дисперсии

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

Формула ковариации

Чем больше пар имеют одинаковый знак отклонения от средней, тем больше сумма в числителе (произведение двух отрицательных чисел также дает положительное число). Большая положительная ковариация говорит о прямой взаимосвязи между переменными. Обратная взаимосвязь дает отрицательную ковариацию. Если количество совпадающих по знаку отклонений примерно равно количеству не совпадающих, то ковариация стремится к нулю, что говорит об отсутствии линейной взаимосвязи.

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

Формула линейного коэффициента корреляции Пирсона

Показатель имеет полное название линейный коэффициент корреляции Пирсона или просто коэффициент корреляции.

Коэффициент корреляции показывает тесноту линейной взаимосвязи и изменяется в диапазоне от -1 до 1. -1 (минус один) означает полную (функциональную) линейную обратную взаимосвязь. 1 (один) – полную (функциональную) линейную положительную взаимосвязь. 0 – отсутствие линейной корреляции (но не обязательно взаимосвязи). На практике всегда получаются промежуточные значения. Для наглядности ниже представлены несколько примеров с разными значениями коэффициента корреляции.

Различная степень корреляции

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

Диаграммы рассеяния дают наглядное представление, что измеряет коэффициент корреляции. Однако нужна более формальная интерпретация. Эту роль выполняет квадрат коэффициента корреляции r2, который называется коэффициентом детерминации, и обычно применяется при оценке качества регрессионных моделей. Снова представьте линию, вокруг которой расположены точки.

Разброс точек вдоль прямой линии

Линейная функция является моделью взаимосвязи между X иY и показывает ожидаемое значение Y при заданном X. Коэффициент детерминации – это соотношение дисперсии ожидаемых Y (точек на прямой линии) к общей дисперсии Y, или доля объясненной вариации Y. При r = 0,1 r2 = 0,01 или 1%, при r = 0,5 r2 = 0,25 или 25%.

Выборочный коэффициент корреляции

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

Согласно Центральное Предельной Теореме распределение оценки любого показателя стремится к нормальному с ростом выборки. Но есть проблемка. Распределение коэффициента корреляции вблизи придельных значений не является симметричным. Ниже пример распределения при истинном коэффициенте корреляции ρ = 0,86.

Распределение выборочных коэффициентов корреляции

Предельное значение не дает выйти за 1 и, как бы «поджимает» распределение справа. Симметричная ситуация наблюдается, если коэффициент корреляции близок к -1.

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

Преобразование Фишера

Распределение z для тех же r имеет следующий вид.

Распределение коэффициентов корреляции после преобразования Фишера

Намного ближе к нормальному. Стандартная ошибка z равна:

Стандартная ошибка z

Далее исходя из свойств нормального распределения несложно найти верхнюю и нижнюю границы доверительного интервала для z. Определим квантиль стандартного нормального распределения для заданной доверительной вероятности, т.е. количество стандартных отклонений от центра распределения.

Квантиль стандартного нормального распределения для расчета доверительного интервала

cγ – квантиль стандартного нормального распределения;
N-1 – функция обратного стандартного распределения;
γ – доверительная вероятность (часто 95%).
Затем рассчитаем границы доверительного интервала.

Нижняя граница z:

Это изображение имеет пустой атрибут alt; его имя файла - corr_form_7.png

Верхняя граница z:

Это изображение имеет пустой атрибут alt; его имя файла - corr_form_8.png

Теперь обратным преобразованием Фишера из z вернемся к r.
Нижняя граница r:

Это изображение имеет пустой атрибут alt; его имя файла - corr_form_9.png

Верхняя граница r:

Это изображение имеет пустой атрибут alt; его имя файла - corr_form_10.png

Это была теоретическая часть. Переходим к практике расчетов.

Как посчитать коэффициент корреляции в Excel

Корреляционный анализ в Excel лучше начинать с визуализации.

Диаграмма рассеяния для визуального анализа корреляции

На диаграмме видна взаимосвязь двух переменных. Рассчитаем коэффициент парной корреляции с помощью функции Excel КОРРЕЛ. В аргументах нужно указать два диапазона.

Расчет коэффициента корреляции в Excel

Коэффициент корреляции 0,88 показывает довольно тесную взаимосвязь между двумя показателями. Но это лишь оценка, поэтому переходим к интервальному оцениванию.

Расчет доверительного интервала для коэффициента корреляции в Excel

В Эксель нет готовых функций для расчета доверительного интервала коэффициента корреляции, как для средней арифметической. Поэтому план такой:

— Делаем преобразование Фишера для r.
— На основе нормальной модели рассчитываем доверительный интервал для z.
— Делаем обратное преобразование Фишера из z в r.

Удивительно, но для преобразования Фишера в Excel есть специальная функция ФИШЕР.

Преобразование Фишера в Excel

Стандартная ошибка z легко подсчитывается с помощью формулы.

Стандартная ошибка z

Используя функцию НОРМ.СТ.ОБР, определим квантиль нормального распределения. Доверительную вероятность возьмем 95%.

Квантиль нормального распределения

Значение 1,96 хорошо известно любому опытному аналитику. В пределах ±1,96σ от средней находится 95% нормально распределенных величин.

Используя z, стандартную ошибку и квантиль, легко определим доверительные границы z.

Доверительные границы для z

Последний шаг – обратное преобразование Фишера из z назад в r с помощью функции Excel ФИШЕРОБР. Получим доверительный интервал коэффициента корреляции.

Доверительные границы коэффициента корреляции

Нижняя граница 95%-го доверительного интервала коэффициента корреляции – 0,724, верхняя граница – 0,953.

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

Несколько важных замечаний

1. Коэффициент корреляции Пирсона чувствителен к выбросам. Одно аномальное значение может существенно исказить коэффициент. Поэтому перед проведением анализа следует проверить и при необходимости удалить выбросы. Другой вариант – перейти к ранговому коэффициенту корреляции Спирмена. Рассчитывается также, только не по исходным значениям, а по их рангам (пример показан в ролике под статьей).

2. Синоним корреляции – это взаимосвязь или совместная вариация. Поэтому наличие корреляции (r ≠ 0) еще не означает причинно-следственную связь между переменными. Вполне возможно, что совместная вариация обусловлена влиянием третьей переменной. Совместное изменение переменных без причинно-следственной связи называется ложная корреляция.

3. Отсутствие линейной корреляции (r = 0) не означает отсутствие взаимосвязи. Она может быть нелинейной. Частично эту проблему решает ранговая корреляция Спирмена, которая показывает совместный рост или снижение рангов, независимо от формы взаимосвязи.

В видео показан расчет коэффициента корреляции Пирсона с доверительными интервалами, ранговый коэффициент корреляции Спирмена.

↓ Скачать файл с примером ↓

Поделиться в социальных сетях:
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

4 комментария к “Импорт csv и txt файлов в Excel c помощью Power Query”

  1. Светлана

    Здравствуйте, Дмитрий! Благодарю Вас за полезную информацию! У меня такой вопрос — можно ли выстраивать те же файлы .CSV-формата, но не друг под другом, а в соседние столбцы? Спасибо

  2. Наталия

    Добрый день, Дмитрий! Спасибо за урок. А будет пример с функцией «объединить», которая объединяет таблицы по ключевому запросу?

    1. Езепов Дмитрий

      Добрый день. Да, планируется серия статей по Power Query, а также новые уроки в онлайн курсе. Оставайтесь на связи.

Оставьте комментарий

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

Пролистать наверх

Электронная книга трюков MS Excel

Секреты эффективной работы

Конфиденциальность данных гарантирована.
Никакого спама.