Подтвердить что ты не робот

R без [1], как красиво форматировать?

Я знаю, что материал был опубликован, но не так полно, как то, что я ищу.

Возьмите любую вспомогательную функцию (т.е. ?mean) и убедитесь, что она выводится (или, по крайней мере, выход должен быть сгенерирован таким же образом).

Как вы получаете вход, выравнивание/намерение?

Пример:

strings <- c("t", "df", "p-value", "mean of x", "mean of y")
values  <- c(t, df, pvalue, mean1, mean2)

Если это будут те вещи, которые вы хотите вывести в R (при вызове из функции), как вы уменьшите [1] и выстроенные значения?

4b9b3361

Ответ 1

Это довольно элементарно, пожалуйста, обратитесь к Введение в R, а также

  • help(cat)
  • help(sprintf)
  • help(format)

и многое другое. См. (Буквально тысячи) примеров в функциях форматирования. Вот простой пример из одного из моих пакетов:

print.summary.fastLm <- function(x, ...) {
    cat("\nCall:\n")
    print(x$call)
    cat("\nResiduals:\n")
    print(x$residSum)
    cat("\n")

    printCoefmat(x$coefficients, P.values=TRUE, has.Pvalue=TRUE)
    digits <- max(3, getOption("digits") - 3)
    cat("\nResidual standard error: ", formatC(x$sigma, digits=digits), " on ",
        formatC(x$df), " degrees of freedom\n", sep="")
    cat("Multiple R-squared: ", formatC(x$r.squared, digits=digits),
        ",\tAdjusted R-squared: ",formatC(x$adj.r.squared, digits=digits),
        "\n", sep="")
    invisible(x)
}