如何将函数的屏幕结果分配给 R 中的变量

我是 R 新手。我正在使用一个名为“CircStat”的库。例如,该库中的函数在屏幕上打印结果

rao.spacing(angles)

Rao's Spacing Test of Uniformity 

Test Statistic = 155.9671 

0.001 < P-value < 0.01

其中“rao.spacing”是函数,“angles”是几个以弧度为单位的角度的列表。

我需要将输出(特别是“155.9671”)传递给变量以在代码的其他部分使用它,我该怎么做?

我更喜欢不写入文件并从中读取,因为我需要使用该功能超过 50,000。而且打印会非常耗时。

谢谢,萌

疯子

显然,CircStats 的作者不认为函数需要返回一个值——rao.spacing()被设计为返回 NULL(在帮助中注意rao.spacing(),VALUE 部分是简单的“NULL”)。

但是,如果您检查函数本身(在 Rstudio 中按 F2,或者在没有任何括号或参数的情况下键入函数),通过创建自己的版本来破解返回值非常简单:

rao2  <- function (x, alpha = 0, rad = TRUE) 
{
  rao.table <- NULL
  data(rao.table, package = "CircStats", envir = sys.frame(which = sys.nframe()))
  if (rad == TRUE) 
    x <- deg(x)
  x <- sort(x%%360)
  n <- length(x)
  spacings <- c(diff(x), x[1] - x[n] + 360)
  U <- 1/2 * sum(abs(spacings - 360/n))
  if (n < 4) 
    stop("Sample size too small")
  if (n <= 30) 
    table.row <- n - 3
  else if (n <= 32) 
    table.row <- 27
  else if (n <= 37) 
    table.row <- 28
  else if (n <= 42) 
    table.row <- 29
  else if (n <= 47) 
    table.row <- 30
  else if (n <= 62) 
    table.row <- 31
  else if (n <= 87) 
    table.row <- 32
  else if (n <= 125) 
    table.row <- 33
  else if (n <= 175) 
    table.row <- 34
  else if (n <= 250) 
    table.row <- 35
  else if (n <= 350) 
    table.row <- 36
  else if (n <= 450) 
    table.row <- 37
  else if (n <= 550) 
    table.row <- 38
  else if (n <= 650) 
    table.row <- 39
  else if (n <= 750) 
    table.row <- 40
  else if (n <= 850) 
    table.row <- 41
  else if (n <= 950) 
    table.row <- 42
  else table.row <- 43
  if (alpha == 0) {
    cat("\n")
    cat("       Rao's Spacing Test of Uniformity", "\n", 
        "\n")
    cat("Test Statistic =", round(U, 5), "\n")
    if (U > rao.table[table.row, 1]) 
      cat("P-value < 0.001", "\n", "\n")
    else if (U > rao.table[table.row, 2]) 
      cat("0.001 < P-value < 0.01", "\n", "\n")
    else if (U > rao.table[table.row, 3]) 
      cat("0.01 < P-value < 0.05", "\n", "\n")
    else if (U > rao.table[table.row, 4]) 
      cat("0.05 < P-value < 0.10", "\n", "\n")
    else cat("P-value > 0.10", "\n", "\n")
  }
  else {
    cat("\n")
    cat("       Rao's Spacing Test of Uniformity", "\n", 
        "\n")
    cat("Test Statistic =", round(U, 5), "\n")
    if (sum(alpha == c(0.001, 0.01, 0.05, 0.1)) == 0) 
      stop("Invalid significance level")
    table.col <- (1:4)[alpha == c(0.001, 0.01, 0.05, 0.1)]
    critical <- rao.table[table.row, table.col]
    cat("Level", alpha, "critical value =", critical, "\n")
    if (U > critical) 
      cat("Reject null hypothesis of uniformity", "\n", 
          "\n")
    else cat("Do not reject null hypothesis of uniformity", 
             "\n", "\n")
  }


  return(U)
}

myvalue  <- rao2(angles)

请注意return(U)最后的 ,它会踢出您正在寻找的值(尽管如此,没有执行该函数旨在执行的那种重要性测试 - 您需要自己执行那些类型的健全性检查)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将iPython探查器%% prun -r的结果分配给变量?

来自分类Dev

如何将iPython探查器%% prun -r的结果分配给变量?

来自分类Dev

如何将sql查询的结果分配给变量并将其用于内置函数中?

来自分类Dev

如何将箭头函数 (=>) 的结果分配给 JavaScript 中的变量

来自分类Dev

如何将sed的结果分配给变量

来自分类Dev

如何将awk结果分配给变量

来自分类Dev

如何将查询结果分配给shell变量

来自分类Dev

如何将查询结果分配给变量?

来自分类Dev

如何将sed的结果分配给变量

来自分类Dev

如何将查找结果分配给变量

来自分类Dev

如何将选择的结果分配给 sqlplus 变量

来自分类Dev

Python:如何将函数的结果分配给我可以读取的变量

来自分类Dev

R将函数的输出分配给变量

来自分类Dev

将函数的结果分配给变量?

来自分类Dev

如何将函数分配给 javascript 变量

来自分类Dev

R:将数据框列分配给函数中的变量

来自分类Dev

将变量分配给R中的范围

来自分类Dev

将字符串分配给R中的变量

来自分类Dev

将类别值分配给r中的多个变量

来自分类Dev

如何将组分配给r中的前n行

来自分类Dev

如何将观测的开始时间分配给R中的小时块

来自分类Dev

如何将管道结果分配给Bash中的变量

来自分类Dev

如何将字典结果分配给python3中的单个变量?

来自分类Dev

如何将数组中的字符串分配给 C 中的变量(来自函数)?

来自分类Dev

如何将列表中的项目分配给变量

来自分类Dev

如何将函数返回的布尔值分配给PostgreSQL 9.4中的变量?

来自分类Dev

在tkinter中我如何将入口函数分配给变量

来自分类Dev

如何将变量分配给python中的特定函数输出?

来自分类Dev

Oracle PL / SQL如何将替换变量的结果重新分配给新变量?

Related 相关文章

  1. 1

    如何将iPython探查器%% prun -r的结果分配给变量?

  2. 2

    如何将iPython探查器%% prun -r的结果分配给变量?

  3. 3

    如何将sql查询的结果分配给变量并将其用于内置函数中?

  4. 4

    如何将箭头函数 (=>) 的结果分配给 JavaScript 中的变量

  5. 5

    如何将sed的结果分配给变量

  6. 6

    如何将awk结果分配给变量

  7. 7

    如何将查询结果分配给shell变量

  8. 8

    如何将查询结果分配给变量?

  9. 9

    如何将sed的结果分配给变量

  10. 10

    如何将查找结果分配给变量

  11. 11

    如何将选择的结果分配给 sqlplus 变量

  12. 12

    Python:如何将函数的结果分配给我可以读取的变量

  13. 13

    R将函数的输出分配给变量

  14. 14

    将函数的结果分配给变量?

  15. 15

    如何将函数分配给 javascript 变量

  16. 16

    R:将数据框列分配给函数中的变量

  17. 17

    将变量分配给R中的范围

  18. 18

    将字符串分配给R中的变量

  19. 19

    将类别值分配给r中的多个变量

  20. 20

    如何将组分配给r中的前n行

  21. 21

    如何将观测的开始时间分配给R中的小时块

  22. 22

    如何将管道结果分配给Bash中的变量

  23. 23

    如何将字典结果分配给python3中的单个变量?

  24. 24

    如何将数组中的字符串分配给 C 中的变量(来自函数)?

  25. 25

    如何将列表中的项目分配给变量

  26. 26

    如何将函数返回的布尔值分配给PostgreSQL 9.4中的变量?

  27. 27

    在tkinter中我如何将入口函数分配给变量

  28. 28

    如何将变量分配给python中的特定函数输出?

  29. 29

    Oracle PL / SQL如何将替换变量的结果重新分配给新变量?

热门标签

归档