楼主: llkknnllyytt
1149 6

[问答] 命令求助 [推广有奖]

  • 2关注
  • 4粉丝

讲师

26%

还不是VIP/贵宾

-

威望
0
论坛币
142 个
通用积分
1.6605
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
5077 点
帖子
326
精华
0
在线时间
229 小时
注册时间
2015-1-12
最后登录
2023-7-3

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
function (unbalanced = FALSE)
{
    v.rates <- c(0.19, 0.13, 0.5, 0.19, 0.7, 0.66, 0.98, 0.72,
        0.71, 0.57, 0.78, 1.32, 1.47, 1.64, 1.32, 2.67, 3.16,
        2.53, 3.38, 3.93, 4.84, 5.6, 4.93, 6.05, 6.83, 6.6, 8.5,
        7.65, 10.59, 10.42, 10.36, 12, 12.68, 14.34, 17.95, 14.76,
        16.37, 18, 17.6, 23.91, 20.53, 22.6, 24.9, 24.33, 32.7,
        26.24, 27.7, 30.47, 36.94, 38.47, 33.47, 33.61, 36.77,
        43.69, 45.2)
    v.cases <- c(3, 2, 7, 3, 10, 11, 16, 11, 10, 7, 11, 22, 24,
        25, 15, 36, 44, 42, 53, 48, 77, 74, 68, 99, 88, 106,
        131, 99, 142, 134, 157, 184, 189, 180, 177, 193, 232,
        262, 249, 239, 219, 267, 323, 325, 343, 223, 250, 308,
        412, 358, 198, 214, 253, 338, 312)
    row.names <- c("25-29", "30-34", "35-39", "40-44", "45-49",
        "50-54", "55-59", "60-64", "65-69", "70-74", "75-79")
    col.names <- c("1955-1959", "1960-1964", "1965-1969", "1970-1974",
        "1975-1978")
    rates <- matrix(data = v.rates, nrow = 11, ncol = 5, byrow = TRUE,
        dimnames = list(row.names, col.names))
    cases <- matrix(data = v.cases, nrow = 11, ncol = 5, byrow = TRUE,
        dimnames = list(row.names, col.names))
    index.col <- seq(1, 4)
    if (unbalanced)
        index.col <- seq(1:5)
    return(list(rates = rates[, index.col], response = cases[,
        index.col], dose = cases[, index.col]/rates[, index.col],
        data.format = "AP", age1 = 25, per1 = 1955, coh1 = NULL,
        unit = 5, per.zero = NULL, per.max = NULL, time.adjust = 0))
}
<environment: namespace:apc>
>

谁能帮看看这是怎么建立的数据库,seq(1,4这类的说的什么


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:unbalanced unbalance function Balanced balance function

沙发
ryoeng 在职认证  发表于 2015-5-22 21:59:34 |只看作者 |坛友微信交流群
  1. > bal <- function(unbalanced = FALSE){
  2. +     v.rates <- c(0.19, 0.13, 0.5, 0.19, 0.7, 0.66, 0.98, 0.72,
  3. +                  0.71, 0.57, 0.78, 1.32, 1.47, 1.64, 1.32, 2.67, 3.16,
  4. +                  2.53, 3.38, 3.93, 4.84, 5.6, 4.93, 6.05, 6.83, 6.6, 8.5,
  5. +                  7.65, 10.59, 10.42, 10.36, 12, 12.68, 14.34, 17.95, 14.76,
  6. +                  16.37, 18, 17.6, 23.91, 20.53, 22.6, 24.9, 24.33, 32.7,
  7. +                  26.24, 27.7, 30.47, 36.94, 38.47, 33.47, 33.61, 36.77,
  8. +                  43.69, 45.2)
  9. +     v.cases <- c(3, 2, 7, 3, 10, 11, 16, 11, 10, 7, 11, 22, 24,
  10. +                  25, 15, 36, 44, 42, 53, 48, 77, 74, 68, 99, 88, 106,
  11. +                  131, 99, 142, 134, 157, 184, 189, 180, 177, 193, 232,
  12. +                  262, 249, 239, 219, 267, 323, 325, 343, 223, 250, 308,
  13. +                  412, 358, 198, 214, 253, 338, 312)
  14. +     row.names <- c("25-29", "30-34", "35-39", "40-44", "45-49",
  15. +                    "50-54", "55-59", "60-64", "65-69", "70-74", "75-79")
  16. +     col.names <- c("1955-1959", "1960-1964", "1965-1969", "1970-1974",
  17. +                    "1975-1978")
  18. +     rates <- matrix(data = v.rates, nrow = 11, ncol = 5, byrow = TRUE,
  19. +                     dimnames = list(row.names, col.names))
  20. +     cases <- matrix(data = v.cases, nrow = 11, ncol = 5, byrow = TRUE,
  21. +                     dimnames = list(row.names, col.names))
  22. +     index.col <- if(unbalanced){seq(1:5)}else{seq(1:4)}
  23. +     return(list(rates = rates[, index.col], response = cases[, index.col],
  24. +                 dose = cases[, index.col]/rates[, index.col],
  25. +                 data.format = "AP", age1 = 25, per1 = 1955, coh1 = NULL,
  26. +                 unit = 5, per.zero = NULL, per.max = NULL, time.adjust = 0)) }
  27. > bal()
  28. $rates
  29.       1955-1959 1960-1964 1965-1969 1970-1974
  30. 25-29      0.19      0.13      0.50      0.19
  31. 30-34      0.66      0.98      0.72      0.71
  32. 35-39      0.78      1.32      1.47      1.64
  33. 40-44      2.67      3.16      2.53      3.38
  34. 45-49      4.84      5.60      4.93      6.05
  35. 50-54      6.60      8.50      7.65     10.59
  36. 55-59     10.36     12.00     12.68     14.34
  37. 60-64     14.76     16.37     18.00     17.60
  38. 65-69     20.53     22.60     24.90     24.33
  39. 70-74     26.24     27.70     30.47     36.94
  40. 75-79     33.47     33.61     36.77     43.69

  41. $response
  42.       1955-1959 1960-1964 1965-1969 1970-1974
  43. 25-29         3         2         7         3
  44. 30-34        11        16        11        10
  45. 35-39        11        22        24        25
  46. 40-44        36        44        42        53
  47. 45-49        77        74        68        99
  48. 50-54       106       131        99       142
  49. 55-59       157       184       189       180
  50. 60-64       193       232       262       249
  51. 65-69       219       267       323       325
  52. 70-74       223       250       308       412
  53. 75-79       198       214       253       338

  54. $dose
  55.       1955-1959 1960-1964 1965-1969 1970-1974
  56. 25-29 15.789474 15.384615 14.000000 15.789474
  57. 30-34 16.666667 16.326531 15.277778 14.084507
  58. 35-39 14.102564 16.666667 16.326531 15.243902
  59. 40-44 13.483146 13.924051 16.600791 15.680473
  60. 45-49 15.909091 13.214286 13.793103 16.363636
  61. 50-54 16.060606 15.411765 12.941176 13.408876
  62. 55-59 15.154440 15.333333 14.905363 12.552301
  63. 60-64 13.075881 14.172266 14.555556 14.147727
  64. 65-69 10.667316 11.814159 12.971888 13.357994
  65. 70-74  8.498476  9.025271 10.108303 11.153221
  66. 75-79  5.915745  6.367153  6.880609  7.736324

  67. $data.format
  68. [1] "AP"

  69. $age1
  70. [1] 25

  71. $per1
  72. [1] 1955

  73. $coh1
  74. NULL

  75. $unit
  76. [1] 5

  77. $per.zero
  78. NULL

  79. $per.max
  80. NULL

  81. $time.adjust
  82. [1] 0

  83. > bal(TRUE)
  84. $rates
  85.       1955-1959 1960-1964 1965-1969 1970-1974 1975-1978
  86. 25-29      0.19      0.13      0.50      0.19      0.70
  87. 30-34      0.66      0.98      0.72      0.71      0.57
  88. 35-39      0.78      1.32      1.47      1.64      1.32
  89. 40-44      2.67      3.16      2.53      3.38      3.93
  90. 45-49      4.84      5.60      4.93      6.05      6.83
  91. 50-54      6.60      8.50      7.65     10.59     10.42
  92. 55-59     10.36     12.00     12.68     14.34     17.95
  93. 60-64     14.76     16.37     18.00     17.60     23.91
  94. 65-69     20.53     22.60     24.90     24.33     32.70
  95. 70-74     26.24     27.70     30.47     36.94     38.47
  96. 75-79     33.47     33.61     36.77     43.69     45.20

  97. $response
  98.       1955-1959 1960-1964 1965-1969 1970-1974 1975-1978
  99. 25-29         3         2         7         3        10
  100. 30-34        11        16        11        10         7
  101. 35-39        11        22        24        25        15
  102. 40-44        36        44        42        53        48
  103. 45-49        77        74        68        99        88
  104. 50-54       106       131        99       142       134
  105. 55-59       157       184       189       180       177
  106. 60-64       193       232       262       249       239
  107. 65-69       219       267       323       325       343
  108. 70-74       223       250       308       412       358
  109. 75-79       198       214       253       338       312

  110. $dose
  111.       1955-1959 1960-1964 1965-1969 1970-1974 1975-1978
  112. 25-29 15.789474 15.384615 14.000000 15.789474 14.285714
  113. 30-34 16.666667 16.326531 15.277778 14.084507 12.280702
  114. 35-39 14.102564 16.666667 16.326531 15.243902 11.363636
  115. 40-44 13.483146 13.924051 16.600791 15.680473 12.213740
  116. 45-49 15.909091 13.214286 13.793103 16.363636 12.884334
  117. 50-54 16.060606 15.411765 12.941176 13.408876 12.859885
  118. 55-59 15.154440 15.333333 14.905363 12.552301  9.860724
  119. 60-64 13.075881 14.172266 14.555556 14.147727  9.995818
  120. 65-69 10.667316 11.814159 12.971888 13.357994 10.489297
  121. 70-74  8.498476  9.025271 10.108303 11.153221  9.305953
  122. 75-79  5.915745  6.367153  6.880609  7.736324  6.902655

  123. $data.format
  124. [1] "AP"

  125. $age1
  126. [1] 25

  127. $per1
  128. [1] 1955

  129. $coh1
  130. NULL

  131. $unit
  132. [1] 5

  133. $per.zero
  134. NULL

  135. $per.max
  136. NULL

  137. $time.adjust
  138. [1] 0
复制代码
已有 2 人评分论坛币 热心指数 收起 理由
求证1加1 + 1 热心帮助其他会员
admin_kefu + 40 热心帮助其他会员

总评分: 论坛币 + 40  热心指数 + 1   查看全部评分

使用道具

藤椅
llkknnllyytt 发表于 2015-5-25 15:09:56 |只看作者 |坛友微信交流群
ryoeng 发表于 2015-5-22 21:59
你好,能不能加下我的QQ,我现在非常需要帮助,怕这是说不明白,这个例子是5行,11列的。但是我的数据时5行,8列的,所以我不知道下面的语句应该怎么更改,能帮帮忙不

使用道具

板凳
llkknnllyytt 发表于 2015-5-25 15:11:32 |只看作者 |坛友微信交流群
ryoeng 发表于 2015-5-22 21:59
如果我的行和列有变化,index.col <- if(unbalanced){seq(1:5)}else{seq(1:4)},这句话是不也发生改变呢?

使用道具

报纸
ryoeng 在职认证  发表于 2015-5-25 18:14:57 |只看作者 |坛友微信交流群
咱没有使用QQ,无论几行几列都是一样的操作法,就像1+1=2, 数目加大的 10+20 就一定会是 30 而不可能是20,10+20≠20。微博是 http://www.weibo.com/5237211589

使用道具

地板
llkknnllyytt 发表于 2015-5-25 20:32:34 |只看作者 |坛友微信交流群
ryoeng 发表于 2015-5-25 18:14
咱没有使用QQ,无论几行几列都是一样的操作法,就像1+1=2, 数目加大的 10+20 就一定会是 30 而不可能是20, ...
if (unbalanced)
        index.col <- seq(1:5)
    return(list(rates = rates[, index.col], response = cases[,
        index.col],dose = cases[, index.col]/rates[, index.col],
        data.format = "AP", age1 = 25, per1 = 1955, coh1 = NULL,
        unit = 5, per.zero = NULL, per.max = NULL, time.adjust = 0))

你能不能告诉我下这个什么seq(1,4),然后又(1,5)啥意思。毕竟我的数据行和列和例子是同的,数据和这个seq(1,5)肯定有关的呀

使用道具

7
llkknnllyytt 发表于 2015-5-25 20:43:12 |只看作者 |坛友微信交流群
ryoeng 发表于 2015-5-22 21:59
而且我想知道为什么,bal的时候就出来4列,bal(true)的时候就出来5列

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 17:17