R: Как записать data.frame, чтобы я мог вставить его в SO, чтобы другие могли его прочитать? - PullRequest
3 голосов
/ 14 апреля 2010

У меня есть большой data.frame, отображающий некоторые странные свойства при построении графика. Я хотел бы задать вопрос об этом в Stackoverflow, чтобы сделать это, я бы хотел записать data.frame в форму, которую я могу вставить в SO, и кто-то другой может легко запустить его и вернуть обратно в Снова объект data.frame. Есть ли простой способ сделать это? Кроме того, если это действительно долго, я должен использовать вставить bin вместо прямой вставки здесь?

Ответы [ 4 ]

4 голосов
/ 14 апреля 2010

Чтобы ответить на ваш вопрос напрямую, проще всего было бы использовать summary() или head() для отображения информации о фрейме данных. Я бы предложил не вставлять фактические данные в вопрос SO, а предоставить публичную ссылку на данные для сообщества, с которым можно поиграть. Если вы еще этого не видели, сервис box.net предоставляет много свободного места для совместной работы в Интернете.

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

2 голосов
/ 14 апреля 2010

Во-первых, идеи Дрю очень хороши.

Кроме того, если вы уменьшаете данные и изолируете «странную» часть, тогда используйте dput (). Это самый простой способ позволить другим загрузить его. Хотя вам нужно сначала уменьшить ваши данные до разумного количества.

В противном случае разместите его как файл csv в месте, доступном через http, и люди смогут прочитать его напрямую с помощью read.csv. Хотя неразумно просить людей помочь вам с очень большим набором данных.

Наконец, посмотрите на ответы на этот вопрос: Как загрузить примеры наборов данных в R?

1 голос
/ 14 апреля 2010

Это отличный вопрос.

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

Сначала , я подозреваю, что любой, кто задает вопрос, предпочитает ответ

  • с достаточным количеством абстракции, чтобы в будущее они могут решить общее класс проблем, к которым текущая проблема принадлежит; и

  • с достаточным практическим руководством (обычно это означает фактический код R) на самом деле решить проблему, это прямо перед нами.

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

Второй , объем данных, который необходим для адекватного объяснения вопроса, на самом деле не имеет значения - важно то, сколько времени люди пытаются ответить на вопрос, чтобы получить эти данные в свои R среда. В базовом дистрибутиве R есть наборы данных, состоящие из 50 000 строк - не имеет значения, потому что я могу получить данные в R за несколько нажатий клавиш. Более того, если вы можете сослаться на один из этих наборов данных, вам не нужно беспокоиться о том, чтобы что-то вырезать и вставить в окно вопроса. Напротив, я действительно стараюсь не заставлять людей соскребать с SO-страницы даже несколько строк данных, чтобы они могли правильно понять мой вопрос (кроме Дирка, он делает вычисления в своей голове).

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

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

0 голосов
/ 14 апреля 2010

dump хорошо работает, когда фрейм данных не очень большой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...