Как записать данные из консоли в файл .csv с заголовками столбцов - PullRequest
0 голосов
/ 21 января 2019

Я использую R для выполнения некоторых вычислений, чтобы получить значения R2, ​​наклон линии, среднее значение и стандартное отклонение. Эти данные отображаются в консоли, но мне нужно, чтобы они были записаны в CSV. файл с заголовками столбцов, чтобы я мог использовать этот CSV. файл для дальнейшего анализа.

Примеры моего кода приведены ниже:

`summary(lm(variable1~variable2, dataset))$r.squared`

 `Dataset %>%
  do({
  mod = lm(Variable1 ~ Variable2, data = .)
  data.frame(Slope = coef(mod)[2])`

Я попытался назвать их (например, S1 = (lm (variable1 ~ variable2, dataset)) $ r.squared) и использовать это для записи данных в файл csv, используя write.csv () и write.tbl но я не смог выяснить, как получить данные под правильным заголовком столбца ниже других значений. Я немного новичок в R.

enter image description here

Помогает ли это вообще? Данные в консоли - это то, что я пытаюсь записать в файл.

1 Ответ

0 голосов
/ 22 января 2019

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

library(broom)

fm <- lm(demand ~ Time, BOD)

write.csv(glance(fm), stdout(), row.names = FALSE)
## "r.squared","adj.r.squared","sigma","statistic","p.value","df","logLik","AIC","BIC","deviance","df.residual"
## 0.644920230248548,0.556150287810685,3.08501562857815,7.2650743318886,0.0543539205107366,2,-14.0565762149087,34.1131524298174,33.4884308375016,38.0692857142857,4

write.csv(tidy(fm), stdout(), row.names = FALSE)
## "term","estimate","std.error","statistic","p.value"
## "(Intercept)",8.52142857142858,2.65894907888091,3.2048107423761,0.0327503317720233
## "Time",1.72142857142857,0.638658910594405,2.6953801831817,0.0543539205107367
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...