Прошу прощения за мое невежество, но ...
Я продолжаю оказываться в ситуации, когда сталкиваюсь с кучей новых данных, которые мне удалось найти. Эти данные обычно выглядят примерно так:
Date Number1 Number2 Category1 Category2
20120125 11 101 Dog Brown
20120126 21 90 Cat Black
20120126 31 134 Cat Brown
(...)
Обычно на первый взгляд я не могу сказать, есть ли здесь какие-то тенденции. Корреляции между различными столбцами могут быть не очень значительными, но я был бы рад, если бы мне не пришлось вручную создавать график для каждой возможной комбинации столбцов / категорий.
Есть ли инструмент, который бы принимал таблицу данных вместе с информацией, какие столбцы следует рассматривать как числа, даты и категории, а затем переходить к графику:
- корреляции между каждыми двумя числовыми столбцами
- корреляции между каждыми двумя числовыми столбцами, с отдельными линиями тренда для каждой категории
- каждый числовой столбец как временной ряд,
- каждый номер столбца как временной ряд, разделенный по категориям,
- и т.п.
В итоге это создаст большое количество графиков, большинство из которых будут отображать только шум. В идеале, инструмент мог бы оценивать графики по корреляции и, в конце концов, отображать слайд-шоу, начиная с графиков с наибольшим количеством очков. Это был бы очень несовершенный, но полезный первый взгляд на набор данных.
Так? Есть ли инструмент, который все используют для этого, и я просто не знаю об этом, или это то, что нам нужно сделать?
источник
Ответы:
@Ondrej и @Michelle предоставили здесь хорошую информацию. Интересно, могу ли я внести свой вклад, обращаясь к некоторым пунктам, не упомянутым в других местах Я бы не стал себя расстраивать из-за того, что я не могу много почерпнуть из данных в табличной форме, таблицы, как правило, не очень хороший способ представления информации (ср., Гельман и др., Превращение таблиц в графики ). С другой стороны, запросить инструмент, который будет автоматически генерировать все правильные графики, чтобы помочь вам исследовать новый набор данных, почти то же самое, что запросить инструмент, который будет думать за вас. (Не поймите это неправильно, я признаю, что ваш вопрос ясно показывает, что вы не заходите так далеко; я просто имею в виду, что такого инструмента никогда не будет). Хорошая дискуссия, связанная с этим, может быть найдена сюда .
После всего сказанного я хотел немного рассказать о типах графиков, которые вы, возможно, захотите использовать для изучения своих данных. Графики, перечисленные в вопросе, были бы хорошим началом, но мы могли бы немного их оптимизировать. Начнем с того, что создание «большого количества графиков», коррелирующих пары переменных, может быть не идеальным. Диаграмма рассеяния отображает только предельные отношения между двумя переменными. Важные отношения часто могут быть скрыты в некоторой комбинации нескольких переменных. Итак, первый способ усилить этот подход - создать матрицу рассеяниякоторый отображает все попарные диаграммы рассеяния одновременно. Матрицы графика рассеяния могут быть улучшены различными способами: например, они могут быть объединены с одномерными графиками плотности ядра распределения каждой переменной, различные маркеры / цвета могут использоваться для построения различных групп, и возможные нелинейные отношения могут быть оценены путем наложения фитинга Лесса.
scatterplot.matrix
Функция в пакете автомобиля в R может делать все эти вещи красиво (пример можно увидеть на полпути вниз страницы связаны выше).Однако, хотя матрицы графиков рассеяния являются хорошим началом, они все еще отображают только маргинальные проекции. Есть несколько способов попытаться выйти за рамки этого. Одним из них является исследование трехмерных графиков с использованием пакета rgl в R. Другой подход заключается в использовании условных графиков; Коплоты могут помочь с отношениями между 3 или 4 переменными одновременно. Особенно полезным является интерактивное использование матрицы рассеяния.(хотя, это потребует больше усилий для обучения), например, путем «чистки». Чистка позволяет выделить точку или точки в одном кадре матрицы, и эти точки будут одновременно выделены во всех других кадрах. Перемещая кисть, вы можете видеть, как все переменные изменяются вместе. ОБНОВЛЕНИЕ: Другая возможность, которую я забыл упомянуть, состоит в использовании параллельного графика координат . Это имеет недостаток в том, что не делает вашу переменную ответа отличной, но может быть полезно, например, при изучении взаимных корреляций между вашими X-переменными.
Я также хочу поблагодарить вас за проверку ваших данных, отсортированных по дате сбора. Хотя данные всегда собираются со временем, люди не всегда делают это. Построение линейного графика - это хорошо, но я бы посоветовал вам дополнить его графиками автокорреляций и частичных автокорреляций . В R функции для них есть
acf
иpacf
соответственно.Я признаю, что все это не совсем отвечает на ваш вопрос в том смысле, что дает вам инструмент, который автоматически создаст все графики для вас, но один из выводов заключается в том, что вам на самом деле не нужно было бы создавать столько графиков, сколько вы боитесь Например, матрица диаграммы рассеяния - это всего лишь одна строка кода. Кроме того, в R должна быть возможность написать функцию / некоторый код многократного использования для себя, который частично автоматизирует некоторые из них (например, я могу представить себе функцию, которая принимает список переменных и упорядочивает даты, сортирует их , для каждого из них появляется новое окно с графиками line, acf и pacf).
источник
marginal.plot
из пакета latticeExtra .Корреляции между каждой парой числовых столбцов могут быть показаны в матрице корреляции. Он не должен быть чисто числовым, он может иметь цветовую кодировку для быстрой оценки. Проверьте пакет corrplot для R.
Для дальнейшего анализа Rattle является весьма полезным инструментом с графическим интерфейсом.
Если вы будете искать в Stack Exchange по ключевым словам «corrplot» или, скорее, «Rattle», вы найдете несколько тем, в которых рассматриваются эти инструменты и их альтернативы. Как этот .
Удачи!
источник
@Ondrej дал несколько полезных советов, поэтому я сосредоточусь на вашем вопросе о том, как программное обеспечение обрабатывает импортированные данные. С символьными данными, «Категория 1» и «Категория 2», программное обеспечение автоматически обрабатывает их как группы или факторы, потому что математические операции не могут быть выполнены с этими частями данных. Это означает, что вам будет запрещено вводить что-либо из этих категорий (в качестве альтернативы вы получите ошибку, если попытаетесь использовать синтаксис или командную строку вместо системы, управляемой меню), в анализ, который требует чисел.
Для таких данных, как «Номер 1» и «Номер 2», программное обеспечение считывает их как числовые. Если у вас есть какие-либо группы / факторы, которые содержат чисто числовые данные, вам нужно будет указать программному обеспечению, что это группы / факторы.
Иногда даты могут быть плохо импортированы в статистическое программное обеспечение. После того, как вы импортируете свои данные, вы должны увидеть, что тип данных в вашей статистической программе показывает некоторую форму типа «дата» для «Дата». Если вы видите тип данных как что-либо кроме даты, у вас есть проблема. Даже если он отображается как дата, проверьте импорт некоторых строк, где у вас есть даты, например, дни 13 или 25 числа месяца - в зависимости от того, как настроено программное обеспечение, иногда американское / британское форматирование даты приводит к искажению данных при импорте из-за смены дня / месяца.
источник