Как перенести данные из эксель в спсс
Необходимо создать одну базу данных для дальнейшего анализа, однако данные хранятся в 12 (случаев) книгах по 10(человек) листов в каждой с одинаковыми отведениями ээг. Есть ли хоть какая-то возможность это сделать?
import pandas as pd
Проще некуда. Открываете спсс, файл-open-data и далее указываете где файл,кликаете на него и он открывается)Добрый вечер. Мне нужна ваша помощь. Пишу сейчас магистерскую диссертацию, в которой будет применяться метод моделирования структурными уравнениями. Знаний в этой области не имею и эконометрику в вузе не изучала. Сейчас скачала софт warpls и дальше 2 этапа дело не идёт. На Amos даётся всего 2 недели и я боюсь что не успею освоить эту программу за столь короткий срок. Жду ваш ответ, даже если ничем не сможете помочь.
Powerquery звучит уместно. Особенно, если данные нужно предварительно готовить.
Конечно есть, пишешь программу, которая перебирает по очереди файлы и сливает в базу. Может и что готовое есть, но мне написать быстрее.
VBA для создания прайс-листа с изображениями
Доброго времени суток!
Не могу не поделиться результатами своих двухнедельных мучений (ну и похвастацца, конечно).
Макрос создаёт прайс (а может и не прайс, смотря какая у вас потребность приключится) с изображениями и их именами из выбранной папки. Высота изображений определяется пользователем на листе и конечные размеры картинок в готовом файле изменяются пропорционально, ячейки подстраиваются под их размер.
Это суть. Дальше - предыстория и вопрос.
Но тут подвернулась работа, в которой моих знаний стало явно не хватать, нужен макрос. Пришлось осваивать. И вот, спустя две недели ночных свиданий с ноутом, макрос готов и все пожелания заказчика учтены.
Код, конечно, кривой, хоть и рабочий; большая часть его кусков скопипастщена с разных форумов, но связана воедино и адаптирована лично мной. Поэтому я сияю, как медный таз - "ОНО РАБОТАЕТ!", а поделиться не с кем - домашние спят - не будить же, пошлют ещё.
Ну все, похвасталась, теперь, собственно, вопрос. Пока сидела с этим макросом, суть работы VBA в общих чертах и понятиях, конечно, уловила. Но слишком сумбурно. Если кто знает хорошую литературу или ресурсы, полезные начинающим, посоветуйте, пожалуйста, буду очень благодарна!
IBM SPSS Statistics и Microsoft Excel – инструменты, отлично дополняющие друг друга. Мы используем файлы Excel для импорта и экспорта данных из/в SPSS, экспорта и правки результатов. В этой публикации мы рассмотрим небольшой «трюк» в Excel, который существенно ускоряет разработку кода (синтаксиса) SPSS.
Случается, что под рукой имеются структурированные метаданные (описания, метки, правила категоризации переменных), которые вы хотели бы переложить в командный синтаксис SPSS. Вот несколько примеров таких ситуаций:
- Есть список имен и список меток переменных. Вы хотели бы создать синтаксис, который назначает метки для соответствующих переменных ( VARIABLE LABELS );
- Есть списки старых и новых имен переменных, и вам необходимо создать синтаксис, который бы переименовал переменные в соответствии с этими правилами;
- Есть перечень значений некоторой категориальной переменной и перечень меток этих значений. Необходимо назначить метки значений (с помощью команды VALUE LABELS );
- Есть набор границ (диапазонов) значения числовой переменной и соответствующие им значения и метки для создаваемой категориальной переменной. Необходимо разработать синтаксис, создающий категориальную переменную на основе заданных диапазонов, и описывающий ее.
В ситуации, когда указанные списки достаточно длинные, простое их копирование в редактор синтаксиса с последующим ручным «превращением» этих заготовок в валидный синтаксис, может быть утомительным.
Рисунок 1. Исходные метаданные (метки значений) на листе Excel
Предположим, в SPSS коды округов находятся в строковой переменной county (строковой, так как нам необходимо сохранить ведущие нули). В SPSS синтаксис назначения меток должен выглядеть примерно так:
Мы очень быстро можем создать «костяк» данного синтаксиса, введя в новый столбец Excel следующую формулу:
В англоязычном интерфейсе Excel функция будет называться иначе:
Суть этой формулы – в создании нового строкового значения по следующим правилам:
- Значение начинается с 4-х пробелов (вообще говоря, они не обязательны и используются здесь лишь для визуальной отбивки синтаксиса).
- Затем вставляется одинарная кавычка. И пробелы, и одинарная кавычка помещается между двойными кавычками, так как для Excel это – текстовое значение.
- Затем вставляется значение кода округа из ячейки B2 .
- Вставляется закрывающая кавычка для текстового значения кода, затем пробел, и снова открывающая кавычка.
- Вставляется метка значения из ячейки C2 .
- Наконец, вставляем еще одну одинарную кавычку – описание метки закончено.
Соединяемые фрагменты строки перечисляются, по правилам Excel, точкой с запятой.
После того, как мы ввели эту формулу в ячейку D2 , в ней отобразится результирующая строка:
Осталось «протянуть» данную формулу вниз до конца списка. И это делается очень быстро, независимо от количества округов и их названий. Excel автоматически изменит ссылки в копируемой формуле. В итоге лист будет выглядеть примерно так:
Рисунок 2. Определения меток значений, оформленные по правилам синтаксиса SPSS с помощью функции СЦЕПИТЬ в Excel
Теперь скопируем все строки из вновь созданного столбца D , начиная со второй строки, и вставим их в Редактор синтаксиса SPSS.
Вставленные строки являются частью спецификации команды VALUE LABELS . Нам остается поместить перед ними начало этой команды: VALUE LABELS county .
Проследите, чтобы между добавленной строкой и строками, вставленными из Excel, не было точки или пустой строки.
Теперь после всех меток значений поместим точку ( . ) . Это будет означать окончание команды VALUE LABELS . Так должен выглядеть финальный результат в Редакторе синтаксиса:
Теперь команда готова к запуску. Запустите команду и проверьте, что SPSS заполнил метки значений для переменной county . Это можно сделать в представлении Вид Переменные (Variable View) Редактора данных SPSS:
Рисунок 3. Заданные метки значений в Редакторе данных SPSS
Вот и все. Вкратце повторим основные действия:
- Мы начали работу с открытия файла с метаданными в Excel. Эти метаданные должны быть определённым образом структурированы.
- Мы разобрали ситуацию и продемонстрировали необходимые шаги для создания на основе метаданных из Excel валидного синтаксиса SPSS. Мы ограничились в примере лишь функцией =СЦЕПИТЬ() , но вам, возможно, придут в голову кейсы, в которых может оказаться полезным применить и другие функции Excel.
- Действия включали 3 основных шага: 1 – ввести формулу, которая формирует строку синтаксиса на основе фрагментов метаданных из разных столбцов, 2 – протянуть эту формулу, чтобы формула автоматически создала значения для остальных строк в файле, 3 – выделить и вставить результирующие строки в Редактор синтаксиса SPSS и, при необходимости, завершить спецификацию синтаксиса вводом начальных или завершающих элементов команды.
«Бонусом» такого подхода к разработке синтаксиса на основе Excel является удобный «интерфейс» для последующего добавления/правки спецификаций синтаксиса. Изменение имени переменной, значения или его метки в исходном столбце приведет к автоматическому обновлению результата функции конкатенации. Таким образом, после внесения изменений в Excel, у вас будут под рукой готовые обновленные фрагменты синтаксиса, которые останется вставить в Редактор синтаксиса SPSS. -
Подумайте, как бы вы могли автоматизировать свою работу с помощью этого нехитрого приёма!
4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.
По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях
Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.
Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.
Прикольный урок, отличные суммы получаются. 1 Дыня это откат?
Отвратительная подача важной информации. Бездарно
Да. Вещь полезная. Делаем расчеты компенсации у потребителей ЖКУ при превышении установленного предельного индекса. 3500 лицевых счетов.
Весь расчет - отдельная тема. 1С эту компенсацию не считает. Спасибо экселю за его возможности.
А вот отчет по расчетам - та еще заморочка. Была бы, если бы не такая функция как консолидация данных.
Сведения по установленным нормативам и типам начислений объединяю в одну строку через функцию "СЦЕПИТЬ", так получаются разные группы потребителей. Справа подставляю нужные числовые значения из основной таблицы обычным копированием. А потом делаю консолидацию.
На все про все 5 минут.
Руководитель по расчету всей этой херни в местной администрации перепроверяет все это, тратя просто МАССУ времени, выбирая все группы фильтром и суммируя показатели по ним через функцию "СУММ", выделяя КАЖДУЮ ячейку.
Вот вам и разница. 5 минут, против как минимум нескольких часов кропотливой работы. Еще ни разу не было расхождений.
Пытался рассказать ей про консолидацию, или хотя бы функцию "ПРОМЕЖУТОЧНЫЕ.ИТОГИ", позволяющую суммировать только отфильтрованные цифры - говорит ей ТАК удобнее.
Ну да. И правда, удобнее. Тратить очень много времени ежемесячно на ручной труд, вместо того чтобы один раз потратить час на освоение данных возможностей по автоматизации и 5-10 минут ежемесячно на перепроверку наших данных с помощью полученных навыков.
Другой случай - своим бухам пытаюсь донести уже несколько лет, чтобы разбирались в excel. Но дальше "забить цифры и нажать кнопочку суммы" не уходит. А когда доходит до задачи "выбрать значения по одним и тем же ФИО/адресам/ЛС и т.д. из разных периодов и разных таблиц" - то они уже с досадой на глазах собираются сидеть часами, выбирая вручную. И тут прихожу я со своей функцией ВПР и делаю все за 5 минут, под удивленные взгляды бухов. Ни в коем случае не хвалюсь. А бухгалтеров частенько ругаю за безолаберность и нежелание учиться.
Так что excel учить НУЖНО. И он очень здорово упрощает жизнь (хотя перепроверять результаты всей этой автоматизации тоже стоит).
Читайте также: