melt(data, id.vars, measure.vars,
variable.name = "variable", ..., na.rm = FALSE, value.name = "value",
factorsAsStrings = TRUE)
id.vars 表示固定不变的列
measure.vars 控制变量,需要处理的列,将这些列名作为某一列的数值
variable.name 重塑后控制变量的列名
value.name 重塑后数值变量的列名
如果data为matrix格式,则不执行上述标准,变成行列的对应值
##
## melt> set.seed(45)
##
## melt> require(reshape2)
##
## melt> require(data.table)
##
## melt> DT <- data.table(
## melt+ i1 = c(1:5, NA),
## melt+ i2 = c(NA,6,7,8,9,10),
## melt+ f1 = factor(sample(c(letters[1:3], NA), 6, TRUE)),
## melt+ c1 = sample(c(letters[1:3], NA), 6, TRUE),
## melt+ d1 = as.Date(c(1:3,NA,4:5), origin="2013-09-01"),
## melt+ d2 = as.Date(6:1, origin="2012-01-01"))
##
## melt> DT[, l1 := DT[, list(c=list(rep(i1, sample(5,1)))), by = i1]$c] # list cols
## i1 i2 f1 c1 d1 d2 l1
## 1: 1 NA c a 2013-09-02 2012-01-07 1,1
## 2: 2 6 b c 2013-09-03 2012-01-06 2,2,2
## 3: 3 7 a a 2013-09-04 2012-01-05 3,3,3
## 4: 4 8 b a 2012-01-04 4,4,4
## 5: 5 9 b b 2013-09-05 2012-01-03 5,5,5,5,5
## 6: NA 10 b NA 2013-09-06 2012-01-02 NA
##
## melt> DT[, l2 := DT[, list(c=list(rep(c1, sample(5,1)))), by = i1]$c]
## i1 i2 f1 c1 d1 d2 l1 l2
## 1: 1 NA c a 2013-09-02 2012-01-07 1,1 a,a,a
## 2: 2 6 b c 2013-09-03 2012-01-06 2,2,2 c,c
## 3: 3 7 a a 2013-09-04 2012-01-05 3,3,3 a
## 4: 4 8 b a 2012-01-04 4,4,4 a,a
## 5: 5 9 b b 2013-09-05 2012-01-03 5,5,5,5,5 b,b,b
## 6: NA 10 b NA 2013-09-06 2012-01-02 NA NA,NA,NA,NA
##
## melt> # basic examples
## melt> melt(DT, id=1:2, measure=3)
## i1 i2 variable value
## 1: 1 NA f1 c
## 2: 2 6 f1 b
## 3: 3 7 f1 a
## 4: 4 8 f1 b
## 5: 5 9 f1 b
## 6: NA 10 f1 b
##
## melt> melt(DT, id=c("i1", "i2"), measure="f1", value.factor=TRUE) # same as above, but value is factor
## i1 i2 variable value
## 1: 1 NA f1 c
## 2: 2 6 f1 b
## 3: 3 7 f1 a
## 4: 4 8 f1 b
## 5: 5 9 f1 b
## 6: NA 10 f1 b
##
## melt> # on Date
## melt> melt(DT, id=c("i1", "f1"), measure=c("d1", "d2")) # date class attribute lost
## i1 f1 variable value
## 1: 1 c d1 15950
## 2: 2 b d1 15951
## 3: 3 a d1 15952
## 4: 4 b d1 NA
## 5: 5 b d1 15953
## 6: NA b d1 15954
## 7: 1 c d2 15346
## 8: 2 b d2 15345
## 9: 3 a d2 15344
## 10: 4 b d2 15343
## 11: 5 b d2 15342
## 12: NA b d2 15341
##
## melt> melt(DT, id=c("i1", "f1"), measure=c("c1", "d1")) # value is char, date attribute lost
## Warning in melt.data.table(DT, id = c("i1", "f1"), measure = c("c1",
## "d1")): All 'measure.vars are NOT of the SAME type. By order of hierarchy,
## the molten data value column will be of type 'character'. Therefore all
## measure variables that are not of type 'character' will be coerced to.
## Check the DETAILS section of ?melt.data.table for more on coercion.
## i1 f1 variable value
## 1: 1 c c1 a
## 2: 2 b c1 c
## 3: 3 a c1 a
## 4: 4 b c1 a
## 5: 5 b c1 b
## 6: NA b c1 NA
## 7: 1 c d1 15950
## 8: 2 b d1 15951
## 9: 3 a d1 15952
## 10: 4 b d1 NA
## 11: 5 b d1 15953
## 12: NA b d1 15954
##
## melt> # on list
## melt> melt(DT, id=1, measure=c("l1", "l2")) # value is a list
## i1 variable value
## 1: 1 l1 1,1
## 2: 2 l1 2,2,2
## 3: 3 l1 3,3,3
## 4: 4 l1 4,4,4
## 5: 5 l1 5,5,5,5,5
## 6: NA l1 NA
## 7: 1 l2 a,a,a
## 8: 2 l2 c,c
## 9: 3 l2 a
## 10: 4 l2 a,a
## 11: 5 l2 b,b,b
## 12: NA l2 NA,NA,NA,NA
##
## melt> melt(DT, id=1, measure=c("c1", "l1")) # c1 coerced to list
## Warning in melt.data.table(DT, id = 1, measure = c("c1", "l1")): All
## 'measure.vars are NOT of the SAME type. By order of hierarchy, the molten
## data value column will be of type 'list'. Therefore all measure variables
## that are not of type 'list' will be coerced to. Check the DETAILS section
## of ?melt.data.table for more on coercion.
## i1 variable value
## 1: 1 c1 a
## 2: 2 c1 c
## 3: 3 c1 a
## 4: 4 c1 a
## 5: 5 c1 b
## 6: NA c1 NA
## 7: 1 l1 1,1
## 8: 2 l1 2,2,2
## 9: 3 l1 3,3,3
## 10: 4 l1 4,4,4
## 11: 5 l1 5,5,5,5,5
## 12: NA l1 NA
##
## melt> # on character
## melt> melt(DT, id=1, measure=c("c1", "f1")) # value is char
## i1 variable value
## 1: 1 c1 a
## 2: 2 c1 c
## 3: 3 c1 a
## 4: 4 c1 a
## 5: 5 c1 b
## 6: NA c1 NA
## 7: 1 f1 c
## 8: 2 f1 b
## 9: 3 f1 a
## 10: 4 f1 b
## 11: 5 f1 b
## 12: NA f1 b
##
## melt> melt(DT, id=1, measure=c("c1", "i2")) # i2 coerced to char
## Warning in melt.data.table(DT, id = 1, measure = c("c1", "i2")): All
## 'measure.vars are NOT of the SAME type. By order of hierarchy, the molten
## data value column will be of type 'character'. Therefore all measure
## variables that are not of type 'character' will be coerced to. Check the
## DETAILS section of ?melt.data.table for more on coercion.
## i1 variable value
## 1: 1 c1 a
## 2: 2 c1 c
## 3: 3 c1 a
## 4: 4 c1 a
## 5: 5 c1 b
## 6: NA c1 NA
## 7: 1 i2 NA
## 8: 2 i2 6
## 9: 3 i2 7
## 10: 4 i2 8
## 11: 5 i2 9
## 12: NA i2 10
##
## melt> # on na.rm=TRUE
## melt> melt(DT, id=1, measure=c("c1", "i2"), na.rm=TRUE) # remove NA
## Warning in melt.data.table(DT, id = 1, measure = c("c1", "i2"), na.rm =
## TRUE): All 'measure.vars are NOT of the SAME type. By order of hierarchy,
## the molten data value column will be of type 'character'. Therefore all
## measure variables that are not of type 'character' will be coerced to.
## Check the DETAILS section of ?melt.data.table for more on coercion.
## i1 variable value
## 1: 1 c1 a
## 2: 2 c1 c
## 3: 3 c1 a
## 4: 4 c1 a
## 5: 5 c1 b
## 6: 2 i2 6
## 7: 3 i2 7
## 8: 4 i2 8
## 9: 5 i2 9
## 10: NA i2 10
dcast(data, formula, fun.aggregate = NULL, ..., margins = NULL,
subset = NULL, fill = NULL, drop = TRUE,
value.var = guess_value(data))
这是一个变宽的函数,将某一列的数值成列名
formula 就是 恒定列~改变的列(此列的数值变成列名)
acast(aqm, day ~ month ~ variable)
day为固定不变的列,month列中的值变为扩展列的列名, variable列中的数值拆分成第三维的数据,按照list进行输出
acast(aqm, month ~ variable, mean, margins = TRUE)
month为固定不变的列,variable列中数值拆分成扩展列的列名,此时对于month对应多个day,可以进行 mean操作(也就是fun.aggregate), margin 可以自己体会
acast(chick_m, chick ~ time, mean, subset = .(time < 10 & chick < 20))
subset对变量进行限制。 ‘.’函数将变量 time, chick 当做字符串来操作而不是他们代表的数值
##
## cast> #Air quality example
## cast> names(airquality) <- tolower(names(airquality))
##
## cast> aqm <- melt(airquality, id=c("month", "day"), na.rm=TRUE)
##
## cast> acast(aqm, day ~ month ~ variable)
## , , ozone
##
## 5 6 7 8 9
## 1 41 NA 135 39 96
## 2 36 NA 49 9 78
## 3 12 NA 32 16 73
## 4 18 NA NA 78 91
## 5 NA NA 64 35 47
## 6 28 NA 40 66 32
## 7 23 29 77 122 20
## 8 19 NA 97 89 23
## 9 8 71 97 110 21
## 10 NA 39 85 NA 24
## 11 7 NA NA NA 44
## 12 16 NA 10 44 21
## 13 11 23 27 28 28
## 14 14 NA NA 65 9
## 15 18 NA 7 NA 13
## 16 14 21 48 22 46
## 17 34 37 35 59 18
## 18 6 20 61 23 13
## 19 30 12 79 31 24
## 20 11 13 63 44 16
## 21 1 NA 16 21 13
## 22 11 NA NA 9 23
## 23 4 NA NA NA 36
## 24 32 NA 80 45 7
## 25 NA NA 108 168 14
## 26 NA NA 20 73 30
## 27 NA NA 52 NA NA
## 28 23 NA 82 76 14
## 29 45 NA 50 118 18
## 30 115 NA 64 84 20
## 31 37 NA 59 85 NA
##
## , , solar.r
##
## 5 6 7 8 9
## 1 190 286 269 83 167
## 2 118 287 248 24 197
## 3 149 242 236 77 183
## 4 313 186 101 NA 189
## 5 NA 220 175 NA 95
## 6 NA 264 314 NA 92
## 7 299 127 276 255 252
## 8 99 273 267 229 220
## 9 19 291 272 207 230
## 10 194 323 175 222 259
## 11 NA 259 139 137 236
## 12 256 250 264 192 259
## 13 290 148 175 273 238
## 14 274 332 291 157 24
## 15 65 322 48 64 112
## 16 334 191 260 71 237
## 17 307 284 274 51 224
## 18 78 37 285 115 27
## 19 322 120 187 244 238
## 20 44 137 220 190 201
## 21 8 150 7 259 238
## 22 320 59 258 36 14
## 23 25 91 295 255 139
## 24 92 250 294 212 49
## 25 66 135 223 238 20
## 26 266 127 81 215 193
## 27 NA 47 82 153 145
## 28 13 98 213 203 191
## 29 252 31 275 225 131
## 30 223 138 253 237 223
## 31 279 NA 254 188 NA
##
## , , wind
##
## 5 6 7 8 9
## 1 7.4 8.6 4.1 6.9 6.9
## 2 8.0 9.7 9.2 13.8 5.1
## 3 12.6 16.1 9.2 7.4 2.8
## 4 11.5 9.2 10.9 6.9 4.6
## 5 14.3 8.6 4.6 7.4 7.4
## 6 14.9 14.3 10.9 4.6 15.5
## 7 8.6 9.7 5.1 4.0 10.9
## 8 13.8 6.9 6.3 10.3 10.3
## 9 20.1 13.8 5.7 8.0 10.9
## 10 8.6 11.5 7.4 8.6 9.7
## 11 6.9 10.9 8.6 11.5 14.9
## 12 9.7 9.2 14.3 11.5 15.5
## 13 9.2 8.0 14.9 11.5 6.3
## 14 10.9 13.8 14.9 9.7 10.9
## 15 13.2 11.5 14.3 11.5 11.5
## 16 11.5 14.9 6.9 10.3 6.9
## 17 12.0 20.7 10.3 6.3 13.8
## 18 18.4 9.2 6.3 7.4 10.3
## 19 11.5 11.5 5.1 10.9 10.3
## 20 9.7 10.3 11.5 10.3 8.0
## 21 9.7 6.3 6.9 15.5 12.6
## 22 16.6 1.7 9.7 14.3 9.2
## 23 9.7 4.6 11.5 12.6 10.3
## 24 12.0 6.3 8.6 9.7 10.3
## 25 16.6 8.0 8.0 3.4 16.6
## 26 14.9 8.0 8.6 8.0 6.9
## 27 8.0 10.3 12.0 5.7 13.2
## 28 12.0 11.5 7.4 9.7 14.3
## 29 14.9 14.9 7.4 2.3 8.0
## 30 5.7 8.0 7.4 6.3 11.5
## 31 7.4 NA 9.2 6.3 NA
##
## , , temp
##
## 5 6 7 8 9
## 1 67 78 84 81 91
## 2 72 74 85 81 92
## 3 74 67 81 82 93
## 4 62 84 84 86 93
## 5 56 85 83 85 87
## 6 66 79 83 87 84
## 7 65 82 88 89 80
## 8 59 87 92 90 78
## 9 61 90 92 90 75
## 10 69 87 89 92 73
## 11 74 93 82 86 81
## 12 69 92 73 86 76
## 13 66 82 81 82 77
## 14 68 80 91 80 71
## 15 58 79 80 79 71
## 16 64 77 81 77 78
## 17 66 72 82 79 67
## 18 57 65 84 76 76
## 19 68 73 87 78 68
## 20 62 76 85 78 82
## 21 59 77 74 77 64
## 22 73 76 81 72 71
## 23 61 76 82 75 81
## 24 61 76 86 79 69
## 25 57 75 85 81 63
## 26 58 78 82 86 70
## 27 57 73 86 88 77
## 28 67 80 88 97 75
## 29 81 77 86 94 76
## 30 79 83 83 96 68
## 31 76 NA 81 94 NA
##
##
## cast> acast(aqm, month ~ variable, mean)
## ozone solar.r wind temp
## 5 23.61538 181.2963 11.622581 65.54839
## 6 29.44444 190.1667 10.266667 79.10000
## 7 59.11538 216.4839 8.941935 83.90323
## 8 59.96154 171.8571 8.793548 83.96774
## 9 31.44828 167.4333 10.180000 76.90000
##
## cast> acast(aqm, month ~ variable, mean, margins = TRUE)
## ozone solar.r wind temp (all)
## 5 23.61538 181.2963 11.622581 65.54839 68.70696
## 6 29.44444 190.1667 10.266667 79.10000 87.38384
## 7 59.11538 216.4839 8.941935 83.90323 93.49748
## 8 59.96154 171.8571 8.793548 83.96774 79.71207
## 9 31.44828 167.4333 10.180000 76.90000 71.82689
## (all) 42.12931 185.9315 9.957516 77.88235 80.05722
##
## cast> dcast(aqm, month ~ variable, mean, margins = c("month", "variable"))
## month ozone solar.r wind temp (all)
## 1 5 23.61538 181.2963 11.622581 65.54839 68.70696
## 2 6 29.44444 190.1667 10.266667 79.10000 87.38384
## 3 7 59.11538 216.4839 8.941935 83.90323 93.49748
## 4 8 59.96154 171.8571 8.793548 83.96774 79.71207
## 5 9 31.44828 167.4333 10.180000 76.90000 71.82689
## 6 (all) 42.12931 185.9315 9.957516 77.88235 80.05722
##
## cast> library(plyr) # needed to access . function
##
## cast> acast(aqm, variable ~ month, mean, subset = .(variable == "ozone"))
## 5 6 7 8 9
## ozone 23.61538 29.44444 59.11538 59.96154 31.44828
##
## cast> acast(aqm, variable ~ month, mean, subset = .(month == 5))
## 5
## ozone 23.61538
## solar.r 181.29630
## wind 11.62258
## temp 65.54839
##
## cast> #Chick weight example
## cast> names(ChickWeight) <- tolower(names(ChickWeight))
##
## cast> chick_m <- melt(ChickWeight, id=2:4, na.rm=TRUE)
##
## cast> dcast(chick_m, time ~ variable, mean) # average effect of time
## time weight
## 1 0 41.06000
## 2 2 49.22000
## 3 4 59.95918
## 4 6 74.30612
## 5 8 91.24490
## 6 10 107.83673
## 7 12 129.24490
## 8 14 143.81250
## 9 16 168.08511
## 10 18 190.19149
## 11 20 209.71739
## 12 21 218.68889
##
## cast> dcast(chick_m, diet ~ variable, mean) # average effect of diet
## diet weight
## 1 1 102.6455
## 2 2 122.6167
## 3 3 142.9500
## 4 4 135.2627
##
## cast> acast(chick_m, diet ~ time, mean) # average effect of diet & time
## 0 2 4 6 8 10 12 14
## 1 41.4 47.25 56.47368 66.78947 79.68421 93.05263 108.5263 123.3889
## 2 40.7 49.40 59.80000 75.40000 91.70000 108.50000 131.3000 141.9000
## 3 40.8 50.40 62.20000 77.90000 98.40000 117.10000 144.4000 164.5000
## 4 41.0 51.80 64.50000 83.90000 105.60000 126.00000 151.4000 161.8000
## 16 18 20 21
## 1 144.6471 158.9412 170.4118 177.7500
## 2 164.7000 187.7000 205.6000 214.7000
## 3 197.4000 233.1000 258.9000 270.3000
## 4 182.0000 202.9000 233.8889 238.5556
##
## cast> # How many chicks at each time? - checking for balance
## cast> acast(chick_m, time ~ diet, length)
## 1 2 3 4
## 0 20 10 10 10
## 2 20 10 10 10
## 4 19 10 10 10
## 6 19 10 10 10
## 8 19 10 10 10
## 10 19 10 10 10
## 12 19 10 10 10
## 14 18 10 10 10
## 16 17 10 10 10
## 18 17 10 10 10
## 20 17 10 10 9
## 21 16 10 10 9
##
## cast> acast(chick_m, chick ~ time, mean)
## 0 2 4 6 8 10 12 14 16 18 20 21
## 18 39 35 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
## 16 41 45 49 51 57 51 54 NaN NaN NaN NaN NaN
## 15 41 49 56 64 68 68 67 68 NaN NaN NaN NaN
## 13 41 48 53 60 65 67 71 70 71 81 91 96
## 9 42 51 59 68 85 96 90 92 93 100 100 98
## 20 41 47 54 58 65 73 77 89 98 107 115 117
## 10 41 44 52 63 74 81 89 96 101 112 120 124
## 8 42 50 61 71 84 93 110 116 126 134 125 NaN
## 17 42 51 61 72 83 89 98 103 113 123 133 142
## 19 43 48 55 62 65 71 82 88 106 120 144 157
## 4 42 49 56 67 74 87 102 108 136 154 160 157
## 6 41 49 59 74 97 124 141 148 155 160 160 157
## 11 43 51 63 84 112 139 168 177 182 184 181 175
## 3 43 39 55 67 84 99 115 138 163 187 198 202
## 1 42 51 59 64 76 93 106 125 149 171 199 205
## 12 41 49 56 62 72 88 119 135 162 185 195 205
## 2 40 49 58 72 84 103 122 138 162 187 209 215
## 5 41 42 48 60 79 106 141 164 197 199 220 223
## 14 41 49 62 79 101 128 164 192 227 248 259 266
## 7 41 49 57 71 89 112 146 174 218 250 288 305
## 24 42 52 58 74 66 68 70 71 72 72 76 74
## 30 42 48 59 72 85 98 115 122 143 151 157 150
## 22 41 55 64 77 90 95 108 111 131 148 164 167
## 23 43 52 61 73 90 103 127 135 145 163 170 175
## 27 39 46 58 73 87 100 115 123 144 163 185 192
## 28 39 46 58 73 92 114 145 156 184 207 212 233
## 26 42 48 57 74 93 114 136 147 169 205 236 251
## 25 40 49 62 78 102 124 146 164 197 231 259 265
## 29 39 48 59 74 87 106 134 150 187 230 279 309
## 21 40 50 62 86 125 163 217 240 275 307 318 331
## 33 39 50 63 77 96 111 137 144 151 146 156 147
## 37 41 48 56 68 80 83 103 112 135 157 169 178
## 36 39 48 61 76 98 116 145 166 198 227 225 220
## 31 42 53 62 73 85 102 123 138 170 204 235 256
## 39 42 50 61 78 89 109 130 146 170 214 250 272
## 38 41 49 61 74 98 109 128 154 192 232 280 290
## 32 41 49 65 82 107 129 159 179 221 263 291 305
## 40 41 55 66 79 101 120 154 182 215 262 295 321
## 34 41 49 63 85 107 134 164 186 235 294 327 341
## 35 41 53 64 87 123 158 201 238 287 332 361 373
## 44 42 51 65 86 103 118 127 138 145 146 NaN NaN
## 45 41 50 61 78 98 117 135 141 147 174 197 196
## 43 42 55 69 96 131 157 184 188 197 198 199 200
## 41 42 51 66 85 103 124 155 153 175 184 199 204
## 47 41 53 66 79 100 123 148 157 168 185 210 205
## 49 40 53 64 85 108 128 152 166 184 203 233 237
## 46 40 52 62 82 101 120 144 156 173 210 231 238
## 50 41 54 67 84 105 122 155 175 205 234 264 264
## 42 42 49 63 84 103 126 160 174 204 234 269 281
## 48 39 50 62 80 104 125 154 170 222 261 303 322
##
## cast> acast(chick_m, chick ~ time, mean, subset = .(time < 10 & chick < 20))
## 0 2 4 6 8
## 18 39 35 NaN NaN NaN
## 16 41 45 49 51 57
## 15 41 49 56 64 68
## 13 41 48 53 60 65
## 9 42 51 59 68 85
##
## cast> acast(chick_m, time ~ diet, length)
## 1 2 3 4
## 0 20 10 10 10
## 2 20 10 10 10
## 4 19 10 10 10
## 6 19 10 10 10
## 8 19 10 10 10
## 10 19 10 10 10
## 12 19 10 10 10
## 14 18 10 10 10
## 16 17 10 10 10
## 18 17 10 10 10
## 20 17 10 10 9
## 21 16 10 10 9
##
## cast> dcast(chick_m, diet + chick ~ time)
## diet chick 0 2 4 6 8 10 12 14 16 18 20 21
## 1 1 18 39 35 NA NA NA NA NA NA NA NA NA NA
## 2 1 16 41 45 49 51 57 51 54 NA NA NA NA NA
## 3 1 15 41 49 56 64 68 68 67 68 NA NA NA NA
## 4 1 13 41 48 53 60 65 67 71 70 71 81 91 96
## 5 1 9 42 51 59 68 85 96 90 92 93 100 100 98
## 6 1 20 41 47 54 58 65 73 77 89 98 107 115 117
## 7 1 10 41 44 52 63 74 81 89 96 101 112 120 124
## 8 1 8 42 50 61 71 84 93 110 116 126 134 125 NA
## 9 1 17 42 51 61 72 83 89 98 103 113 123 133 142
## 10 1 19 43 48 55 62 65 71 82 88 106 120 144 157
## 11 1 4 42 49 56 67 74 87 102 108 136 154 160 157
## 12 1 6 41 49 59 74 97 124 141 148 155 160 160 157
## 13 1 11 43 51 63 84 112 139 168 177 182 184 181 175
## 14 1 3 43 39 55 67 84 99 115 138 163 187 198 202
## 15 1 1 42 51 59 64 76 93 106 125 149 171 199 205
## 16 1 12 41 49 56 62 72 88 119 135 162 185 195 205
## 17 1 2 40 49 58 72 84 103 122 138 162 187 209 215
## 18 1 5 41 42 48 60 79 106 141 164 197 199 220 223
## 19 1 14 41 49 62 79 101 128 164 192 227 248 259 266
## 20 1 7 41 49 57 71 89 112 146 174 218 250 288 305
## 21 2 24 42 52 58 74 66 68 70 71 72 72 76 74
## 22 2 30 42 48 59 72 85 98 115 122 143 151 157 150
## 23 2 22 41 55 64 77 90 95 108 111 131 148 164 167
## 24 2 23 43 52 61 73 90 103 127 135 145 163 170 175
## 25 2 27 39 46 58 73 87 100 115 123 144 163 185 192
## 26 2 28 39 46 58 73 92 114 145 156 184 207 212 233
## 27 2 26 42 48 57 74 93 114 136 147 169 205 236 251
## 28 2 25 40 49 62 78 102 124 146 164 197 231 259 265
## 29 2 29 39 48 59 74 87 106 134 150 187 230 279 309
## 30 2 21 40 50 62 86 125 163 217 240 275 307 318 331
## 31 3 33 39 50 63 77 96 111 137 144 151 146 156 147
## 32 3 37 41 48 56 68 80 83 103 112 135 157 169 178
## 33 3 36 39 48 61 76 98 116 145 166 198 227 225 220
## 34 3 31 42 53 62 73 85 102 123 138 170 204 235 256
## 35 3 39 42 50 61 78 89 109 130 146 170 214 250 272
## 36 3 38 41 49 61 74 98 109 128 154 192 232 280 290
## 37 3 32 41 49 65 82 107 129 159 179 221 263 291 305
## 38 3 40 41 55 66 79 101 120 154 182 215 262 295 321
## 39 3 34 41 49 63 85 107 134 164 186 235 294 327 341
## 40 3 35 41 53 64 87 123 158 201 238 287 332 361 373
## 41 4 44 42 51 65 86 103 118 127 138 145 146 NA NA
## 42 4 45 41 50 61 78 98 117 135 141 147 174 197 196
## 43 4 43 42 55 69 96 131 157 184 188 197 198 199 200
## 44 4 41 42 51 66 85 103 124 155 153 175 184 199 204
## 45 4 47 41 53 66 79 100 123 148 157 168 185 210 205
## 46 4 49 40 53 64 85 108 128 152 166 184 203 233 237
## 47 4 46 40 52 62 82 101 120 144 156 173 210 231 238
## 48 4 50 41 54 67 84 105 122 155 175 205 234 264 264
## 49 4 42 42 49 63 84 103 126 160 174 204 234 269 281
## 50 4 48 39 50 62 80 104 125 154 170 222 261 303 322
##
## cast> acast(chick_m, diet + chick ~ time)
## 0 2 4 6 8 10 12 14 16 18 20 21
## 1_18 39 35 NA NA NA NA NA NA NA NA NA NA
## 1_16 41 45 49 51 57 51 54 NA NA NA NA NA
## 1_15 41 49 56 64 68 68 67 68 NA NA NA NA
## 1_13 41 48 53 60 65 67 71 70 71 81 91 96
## 1_9 42 51 59 68 85 96 90 92 93 100 100 98
## 1_20 41 47 54 58 65 73 77 89 98 107 115 117
## 1_10 41 44 52 63 74 81 89 96 101 112 120 124
## 1_8 42 50 61 71 84 93 110 116 126 134 125 NA
## 1_17 42 51 61 72 83 89 98 103 113 123 133 142
## 1_19 43 48 55 62 65 71 82 88 106 120 144 157
## 1_4 42 49 56 67 74 87 102 108 136 154 160 157
## 1_6 41 49 59 74 97 124 141 148 155 160 160 157
## 1_11 43 51 63 84 112 139 168 177 182 184 181 175
## 1_3 43 39 55 67 84 99 115 138 163 187 198 202
## 1_1 42 51 59 64 76 93 106 125 149 171 199 205
## 1_12 41 49 56 62 72 88 119 135 162 185 195 205
## 1_2 40 49 58 72 84 103 122 138 162 187 209 215
## 1_5 41 42 48 60 79 106 141 164 197 199 220 223
## 1_14 41 49 62 79 101 128 164 192 227 248 259 266
## 1_7 41 49 57 71 89 112 146 174 218 250 288 305
## 2_24 42 52 58 74 66 68 70 71 72 72 76 74
## 2_30 42 48 59 72 85 98 115 122 143 151 157 150
## 2_22 41 55 64 77 90 95 108 111 131 148 164 167
## 2_23 43 52 61 73 90 103 127 135 145 163 170 175
## 2_27 39 46 58 73 87 100 115 123 144 163 185 192
## 2_28 39 46 58 73 92 114 145 156 184 207 212 233
## 2_26 42 48 57 74 93 114 136 147 169 205 236 251
## 2_25 40 49 62 78 102 124 146 164 197 231 259 265
## 2_29 39 48 59 74 87 106 134 150 187 230 279 309
## 2_21 40 50 62 86 125 163 217 240 275 307 318 331
## 3_33 39 50 63 77 96 111 137 144 151 146 156 147
## 3_37 41 48 56 68 80 83 103 112 135 157 169 178
## 3_36 39 48 61 76 98 116 145 166 198 227 225 220
## 3_31 42 53 62 73 85 102 123 138 170 204 235 256
## 3_39 42 50 61 78 89 109 130 146 170 214 250 272
## 3_38 41 49 61 74 98 109 128 154 192 232 280 290
## 3_32 41 49 65 82 107 129 159 179 221 263 291 305
## 3_40 41 55 66 79 101 120 154 182 215 262 295 321
## 3_34 41 49 63 85 107 134 164 186 235 294 327 341
## 3_35 41 53 64 87 123 158 201 238 287 332 361 373
## 4_44 42 51 65 86 103 118 127 138 145 146 NA NA
## 4_45 41 50 61 78 98 117 135 141 147 174 197 196
## 4_43 42 55 69 96 131 157 184 188 197 198 199 200
## 4_41 42 51 66 85 103 124 155 153 175 184 199 204
## 4_47 41 53 66 79 100 123 148 157 168 185 210 205
## 4_49 40 53 64 85 108 128 152 166 184 203 233 237
## 4_46 40 52 62 82 101 120 144 156 173 210 231 238
## 4_50 41 54 67 84 105 122 155 175 205 234 264 264
## 4_42 42 49 63 84 103 126 160 174 204 234 269 281
## 4_48 39 50 62 80 104 125 154 170 222 261 303 322
##
## cast> acast(chick_m, chick ~ time ~ diet)
## , , 1
##
## 0 2 4 6 8 10 12 14 16 18 20 21
## 18 39 35 NA NA NA NA NA NA NA NA NA NA
## 16 41 45 49 51 57 51 54 NA NA NA NA NA
## 15 41 49 56 64 68 68 67 68 NA NA NA NA
## 13 41 48 53 60 65 67 71 70 71 81 91 96
## 9 42 51 59 68 85 96 90 92 93 100 100 98
## 20 41 47 54 58 65 73 77 89 98 107 115 117
## 10 41 44 52 63 74 81 89 96 101 112 120 124
## 8 42 50 61 71 84 93 110 116 126 134 125 NA
## 17 42 51 61 72 83 89 98 103 113 123 133 142
## 19 43 48 55 62 65 71 82 88 106 120 144 157
## 4 42 49 56 67 74 87 102 108 136 154 160 157
## 6 41 49 59 74 97 124 141 148 155 160 160 157
## 11 43 51 63 84 112 139 168 177 182 184 181 175
## 3 43 39 55 67 84 99 115 138 163 187 198 202
## 1 42 51 59 64 76 93 106 125 149 171 199 205
## 12 41 49 56 62 72 88 119 135 162 185 195 205
## 2 40 49 58 72 84 103 122 138 162 187 209 215
## 5 41 42 48 60 79 106 141 164 197 199 220 223
## 14 41 49 62 79 101 128 164 192 227 248 259 266
## 7 41 49 57 71 89 112 146 174 218 250 288 305
## 24 NA NA NA NA NA NA NA NA NA NA NA NA
## 30 NA NA NA NA NA NA NA NA NA NA NA NA
## 22 NA NA NA NA NA NA NA NA NA NA NA NA
## 23 NA NA NA NA NA NA NA NA NA NA NA NA
## 27 NA NA NA NA NA NA NA NA NA NA NA NA
## 28 NA NA NA NA NA NA NA NA NA NA NA NA
## 26 NA NA NA NA NA NA NA NA NA NA NA NA
## 25 NA NA NA NA NA NA NA NA NA NA NA NA
## 29 NA NA NA NA NA NA NA NA NA NA NA NA
## 21 NA NA NA NA NA NA NA NA NA NA NA NA
## 33 NA NA NA NA NA NA NA NA NA NA NA NA
## 37 NA NA NA NA NA NA NA NA NA NA NA NA
## 36 NA NA NA NA NA NA NA NA NA NA NA NA
## 31 NA NA NA NA NA NA NA NA NA NA NA NA
## 39 NA NA NA NA NA NA NA NA NA NA NA NA
## 38 NA NA NA NA NA NA NA NA NA NA NA NA
## 32 NA NA NA NA NA NA NA NA NA NA NA NA
## 40 NA NA NA NA NA NA NA NA NA NA NA NA
## 34 NA NA NA NA NA NA NA NA NA NA NA NA
## 35 NA NA NA NA NA NA NA NA NA NA NA NA
## 44 NA NA NA NA NA NA NA NA NA NA NA NA
## 45 NA NA NA NA NA NA NA NA NA NA NA NA
## 43 NA NA NA NA NA NA NA NA NA NA NA NA
## 41 NA NA NA NA NA NA NA NA NA NA NA NA
## 47 NA NA NA NA NA NA NA NA NA NA NA NA
## 49 NA NA NA NA NA NA NA NA NA NA NA NA
## 46 NA NA NA NA NA NA NA NA NA NA NA NA
## 50 NA NA NA NA NA NA NA NA NA NA NA NA
## 42 NA NA NA NA NA NA NA NA NA NA NA NA
## 48 NA NA NA NA NA NA NA NA NA NA NA NA
##
## , , 2
##
## 0 2 4 6 8 10 12 14 16 18 20 21
## 18 NA NA NA NA NA NA NA NA NA NA NA NA
## 16 NA NA NA NA NA NA NA NA NA NA NA NA
## 15 NA NA NA NA NA NA NA NA NA NA NA NA
## 13 NA NA NA NA NA NA NA NA NA NA NA NA
## 9 NA NA NA NA NA NA NA NA NA NA NA NA
## 20 NA NA NA NA NA NA NA NA NA NA NA NA
## 10 NA NA NA NA NA NA NA NA NA NA NA NA
## 8 NA NA NA NA NA NA NA NA NA NA NA NA
## 17 NA NA NA NA NA NA NA NA NA NA NA NA
## 19 NA NA NA NA NA NA NA NA NA NA NA NA
## 4 NA NA NA NA NA NA NA NA NA NA NA NA
## 6 NA NA NA NA NA NA NA NA NA NA NA NA
## 11 NA NA NA NA NA NA NA NA NA NA NA NA
## 3 NA NA NA NA NA NA NA NA NA NA NA NA
## 1 NA NA NA NA NA NA NA NA NA NA NA NA
## 12 NA NA NA NA NA NA NA NA NA NA NA NA
## 2 NA NA NA NA NA NA NA NA NA NA NA NA
## 5 NA NA NA NA NA NA NA NA NA NA NA NA
## 14 NA NA NA NA NA NA NA NA NA NA NA NA
## 7 NA NA NA NA NA NA NA NA NA NA NA NA
## 24 42 52 58 74 66 68 70 71 72 72 76 74
## 30 42 48 59 72 85 98 115 122 143 151 157 150
## 22 41 55 64 77 90 95 108 111 131 148 164 167
## 23 43 52 61 73 90 103 127 135 145 163 170 175
## 27 39 46 58 73 87 100 115 123 144 163 185 192
## 28 39 46 58 73 92 114 145 156 184 207 212 233
## 26 42 48 57 74 93 114 136 147 169 205 236 251
## 25 40 49 62 78 102 124 146 164 197 231 259 265
## 29 39 48 59 74 87 106 134 150 187 230 279 309
## 21 40 50 62 86 125 163 217 240 275 307 318 331
## 33 NA NA NA NA NA NA NA NA NA NA NA NA
## 37 NA NA NA NA NA NA NA NA NA NA NA NA
## 36 NA NA NA NA NA NA NA NA NA NA NA NA
## 31 NA NA NA NA NA NA NA NA NA NA NA NA
## 39 NA NA NA NA NA NA NA NA NA NA NA NA
## 38 NA NA NA NA NA NA NA NA NA NA NA NA
## 32 NA NA NA NA NA NA NA NA NA NA NA NA
## 40 NA NA NA NA NA NA NA NA NA NA NA NA
## 34 NA NA NA NA NA NA NA NA NA NA NA NA
## 35 NA NA NA NA NA NA NA NA NA NA NA NA
## 44 NA NA NA NA NA NA NA NA NA NA NA NA
## 45 NA NA NA NA NA NA NA NA NA NA NA NA
## 43 NA NA NA NA NA NA NA NA NA NA NA NA
## 41 NA NA NA NA NA NA NA NA NA NA NA NA
## 47 NA NA NA NA NA NA NA NA NA NA NA NA
## 49 NA NA NA NA NA NA NA NA NA NA NA NA
## 46 NA NA NA NA NA NA NA NA NA NA NA NA
## 50 NA NA NA NA NA NA NA NA NA NA NA NA
## 42 NA NA NA NA NA NA NA NA NA NA NA NA
## 48 NA NA NA NA NA NA NA NA NA NA NA NA
##
## , , 3
##
## 0 2 4 6 8 10 12 14 16 18 20 21
## 18 NA NA NA NA NA NA NA NA NA NA NA NA
## 16 NA NA NA NA NA NA NA NA NA NA NA NA
## 15 NA NA NA NA NA NA NA NA NA NA NA NA
## 13 NA NA NA NA NA NA NA NA NA NA NA NA
## 9 NA NA NA NA NA NA NA NA NA NA NA NA
## 20 NA NA NA NA NA NA NA NA NA NA NA NA
## 10 NA NA NA NA NA NA NA NA NA NA NA NA
## 8 NA NA NA NA NA NA NA NA NA NA NA NA
## 17 NA NA NA NA NA NA NA NA NA NA NA NA
## 19 NA NA NA NA NA NA NA NA NA NA NA NA
## 4 NA NA NA NA NA NA NA NA NA NA NA NA
## 6 NA NA NA NA NA NA NA NA NA NA NA NA
## 11 NA NA NA NA NA NA NA NA NA NA NA NA
## 3 NA NA NA NA NA NA NA NA NA NA NA NA
## 1 NA NA NA NA NA NA NA NA NA NA NA NA
## 12 NA NA NA NA NA NA NA NA NA NA NA NA
## 2 NA NA NA NA NA NA NA NA NA NA NA NA
## 5 NA NA NA NA NA NA NA NA NA NA NA NA
## 14 NA NA NA NA NA NA NA NA NA NA NA NA
## 7 NA NA NA NA NA NA NA NA NA NA NA NA
## 24 NA NA NA NA NA NA NA NA NA NA NA NA
## 30 NA NA NA NA NA NA NA NA NA NA NA NA
## 22 NA NA NA NA NA NA NA NA NA NA NA NA
## 23 NA NA NA NA NA NA NA NA NA NA NA NA
## 27 NA NA NA NA NA NA NA NA NA NA NA NA
## 28 NA NA NA NA NA NA NA NA NA NA NA NA
## 26 NA NA NA NA NA NA NA NA NA NA NA NA
## 25 NA NA NA NA NA NA NA NA NA NA NA NA
## 29 NA NA NA NA NA NA NA NA NA NA NA NA
## 21 NA NA NA NA NA NA NA NA NA NA NA NA
## 33 39 50 63 77 96 111 137 144 151 146 156 147
## 37 41 48 56 68 80 83 103 112 135 157 169 178
## 36 39 48 61 76 98 116 145 166 198 227 225 220
## 31 42 53 62 73 85 102 123 138 170 204 235 256
## 39 42 50 61 78 89 109 130 146 170 214 250 272
## 38 41 49 61 74 98 109 128 154 192 232 280 290
## 32 41 49 65 82 107 129 159 179 221 263 291 305
## 40 41 55 66 79 101 120 154 182 215 262 295 321
## 34 41 49 63 85 107 134 164 186 235 294 327 341
## 35 41 53 64 87 123 158 201 238 287 332 361 373
## 44 NA NA NA NA NA NA NA NA NA NA NA NA
## 45 NA NA NA NA NA NA NA NA NA NA NA NA
## 43 NA NA NA NA NA NA NA NA NA NA NA NA
## 41 NA NA NA NA NA NA NA NA NA NA NA NA
## 47 NA NA NA NA NA NA NA NA NA NA NA NA
## 49 NA NA NA NA NA NA NA NA NA NA NA NA
## 46 NA NA NA NA NA NA NA NA NA NA NA NA
## 50 NA NA NA NA NA NA NA NA NA NA NA NA
## 42 NA NA NA NA NA NA NA NA NA NA NA NA
## 48 NA NA NA NA NA NA NA NA NA NA NA NA
##
## , , 4
##
## 0 2 4 6 8 10 12 14 16 18 20 21
## 18 NA NA NA NA NA NA NA NA NA NA NA NA
## 16 NA NA NA NA NA NA NA NA NA NA NA NA
## 15 NA NA NA NA NA NA NA NA NA NA NA NA
## 13 NA NA NA NA NA NA NA NA NA NA NA NA
## 9 NA NA NA NA NA NA NA NA NA NA NA NA
## 20 NA NA NA NA NA NA NA NA NA NA NA NA
## 10 NA NA NA NA NA NA NA NA NA NA NA NA
## 8 NA NA NA NA NA NA NA NA NA NA NA NA
## 17 NA NA NA NA NA NA NA NA NA NA NA NA
## 19 NA NA NA NA NA NA NA NA NA NA NA NA
## 4 NA NA NA NA NA NA NA NA NA NA NA NA
## 6 NA NA NA NA NA NA NA NA NA NA NA NA
## 11 NA NA NA NA NA NA NA NA NA NA NA NA
## 3 NA NA NA NA NA NA NA NA NA NA NA NA
## 1 NA NA NA NA NA NA NA NA NA NA NA NA
## 12 NA NA NA NA NA NA NA NA NA NA NA NA
## 2 NA NA NA NA NA NA NA NA NA NA NA NA
## 5 NA NA NA NA NA NA NA NA NA NA NA NA
## 14 NA NA NA NA NA NA NA NA NA NA NA NA
## 7 NA NA NA NA NA NA NA NA NA NA NA NA
## 24 NA NA NA NA NA NA NA NA NA NA NA NA
## 30 NA NA NA NA NA NA NA NA NA NA NA NA
## 22 NA NA NA NA NA NA NA NA NA NA NA NA
## 23 NA NA NA NA NA NA NA NA NA NA NA NA
## 27 NA NA NA NA NA NA NA NA NA NA NA NA
## 28 NA NA NA NA NA NA NA NA NA NA NA NA
## 26 NA NA NA NA NA NA NA NA NA NA NA NA
## 25 NA NA NA NA NA NA NA NA NA NA NA NA
## 29 NA NA NA NA NA NA NA NA NA NA NA NA
## 21 NA NA NA NA NA NA NA NA NA NA NA NA
## 33 NA NA NA NA NA NA NA NA NA NA NA NA
## 37 NA NA NA NA NA NA NA NA NA NA NA NA
## 36 NA NA NA NA NA NA NA NA NA NA NA NA
## 31 NA NA NA NA NA NA NA NA NA NA NA NA
## 39 NA NA NA NA NA NA NA NA NA NA NA NA
## 38 NA NA NA NA NA NA NA NA NA NA NA NA
## 32 NA NA NA NA NA NA NA NA NA NA NA NA
## 40 NA NA NA NA NA NA NA NA NA NA NA NA
## 34 NA NA NA NA NA NA NA NA NA NA NA NA
## 35 NA NA NA NA NA NA NA NA NA NA NA NA
## 44 42 51 65 86 103 118 127 138 145 146 NA NA
## 45 41 50 61 78 98 117 135 141 147 174 197 196
## 43 42 55 69 96 131 157 184 188 197 198 199 200
## 41 42 51 66 85 103 124 155 153 175 184 199 204
## 47 41 53 66 79 100 123 148 157 168 185 210 205
## 49 40 53 64 85 108 128 152 166 184 203 233 237
## 46 40 52 62 82 101 120 144 156 173 210 231 238
## 50 41 54 67 84 105 122 155 175 205 234 264 264
## 42 42 49 63 84 103 126 160 174 204 234 269 281
## 48 39 50 62 80 104 125 154 170 222 261 303 322
##
##
## cast> acast(chick_m, diet + chick ~ time, length, margins="diet")
## 0 2 4 6 8 10 12 14 16 18 20 21
## 1_18 1 1 0 0 0 0 0 0 0 0 0 0
## 1_16 1 1 1 1 1 1 1 0 0 0 0 0
## 1_15 1 1 1 1 1 1 1 1 0 0 0 0
## 1_13 1 1 1 1 1 1 1 1 1 1 1 1
## 1_9 1 1 1 1 1 1 1 1 1 1 1 1
## 1_20 1 1 1 1 1 1 1 1 1 1 1 1
## 1_10 1 1 1 1 1 1 1 1 1 1 1 1
## 1_8 1 1 1 1 1 1 1 1 1 1 1 0
## 1_17 1 1 1 1 1 1 1 1 1 1 1 1
## 1_19 1 1 1 1 1 1 1 1 1 1 1 1
## 1_4 1 1 1 1 1 1 1 1 1 1 1 1
## 1_6 1 1 1 1 1 1 1 1 1 1 1 1
## 1_11 1 1 1 1 1 1 1 1 1 1 1 1
## 1_3 1 1 1 1 1 1 1 1 1 1 1 1
## 1_1 1 1 1 1 1 1 1 1 1 1 1 1
## 1_12 1 1 1 1 1 1 1 1 1 1 1 1
## 1_2 1 1 1 1 1 1 1 1 1 1 1 1
## 1_5 1 1 1 1 1 1 1 1 1 1 1 1
## 1_14 1 1 1 1 1 1 1 1 1 1 1 1
## 1_7 1 1 1 1 1 1 1 1 1 1 1 1
## 2_24 1 1 1 1 1 1 1 1 1 1 1 1
## 2_30 1 1 1 1 1 1 1 1 1 1 1 1
## 2_22 1 1 1 1 1 1 1 1 1 1 1 1
## 2_23 1 1 1 1 1 1 1 1 1 1 1 1
## 2_27 1 1 1 1 1 1 1 1 1 1 1 1
## 2_28 1 1 1 1 1 1 1 1 1 1 1 1
## 2_26 1 1 1 1 1 1 1 1 1 1 1 1
## 2_25 1 1 1 1 1 1 1 1 1 1 1 1
## 2_29 1 1 1 1 1 1 1 1 1 1 1 1
## 2_21 1 1 1 1 1 1 1 1 1 1 1 1
## 3_33 1 1 1 1 1 1 1 1 1 1 1 1
## 3_37 1 1 1 1 1 1 1 1 1 1 1 1
## 3_36 1 1 1 1 1 1 1 1 1 1 1 1
## 3_31 1 1 1 1 1 1 1 1 1 1 1 1
## 3_39 1 1 1 1 1 1 1 1 1 1 1 1
## 3_38 1 1 1 1 1 1 1 1 1 1 1 1
## 3_32 1 1 1 1 1 1 1 1 1 1 1 1
## 3_40 1 1 1 1 1 1 1 1 1 1 1 1
## 3_34 1 1 1 1 1 1 1 1 1 1 1 1
## 3_35 1 1 1 1 1 1 1 1 1 1 1 1
## 4_44 1 1 1 1 1 1 1 1 1 1 0 0
## 4_45 1 1 1 1 1 1 1 1 1 1 1 1
## 4_43 1 1 1 1 1 1 1 1 1 1 1 1
## 4_41 1 1 1 1 1 1 1 1 1 1 1 1
## 4_47 1 1 1 1 1 1 1 1 1 1 1 1
## 4_49 1 1 1 1 1 1 1 1 1 1 1 1
## 4_46 1 1 1 1 1 1 1 1 1 1 1 1
## 4_50 1 1 1 1 1 1 1 1 1 1 1 1
## 4_42 1 1 1 1 1 1 1 1 1 1 1 1
## 4_48 1 1 1 1 1 1 1 1 1 1 1 1
## (all)_(all) 50 50 49 49 49 49 49 48 47 47 46 45
##
## cast> acast(chick_m, diet + chick ~ time, length, drop = FALSE)
## 0 2 4 6 8 10 12 14 16 18 20 21
## 1_18 1 1 0 0 0 0 0 0 0 0 0 0
## 1_16 1 1 1 1 1 1 1 0 0 0 0 0
## 1_15 1 1 1 1 1 1 1 1 0 0 0 0
## 1_13 1 1 1 1 1 1 1 1 1 1 1 1
## 1_9 1 1 1 1 1 1 1 1 1 1 1 1
## 1_20 1 1 1 1 1 1 1 1 1 1 1 1
## 1_10 1 1 1 1 1 1 1 1 1 1 1 1
## 1_8 1 1 1 1 1 1 1 1 1 1 1 0
## 1_17 1 1 1 1 1 1 1 1 1 1 1 1
## 1_19 1 1 1 1 1 1 1 1 1 1 1 1
## 1_4 1 1 1 1 1 1 1 1 1 1 1 1
## 1_6 1 1 1 1 1 1 1 1 1 1 1 1
## 1_11 1 1 1 1 1 1 1 1 1 1 1 1
## 1_3 1 1 1 1 1 1 1 1 1 1 1 1
## 1_1 1 1 1 1 1 1 1 1 1 1 1 1
## 1_12 1 1 1 1 1 1 1 1 1 1 1 1
## 1_2 1 1 1 1 1 1 1 1 1 1 1 1
## 1_5 1 1 1 1 1 1 1 1 1 1 1 1
## 1_14 1 1 1 1 1 1 1 1 1 1 1 1
## 1_7 1 1 1 1 1 1 1 1 1 1 1 1
## 1_24 0 0 0 0 0 0 0 0 0 0 0 0
## 1_30 0 0 0 0 0 0 0 0 0 0 0 0
## 1_22 0 0 0 0 0 0 0 0 0 0 0 0
## 1_23 0 0 0 0 0 0 0 0 0 0 0 0
## 1_27 0 0 0 0 0 0 0 0 0 0 0 0
## 1_28 0 0 0 0 0 0 0 0 0 0 0 0
## 1_26 0 0 0 0 0 0 0 0 0 0 0 0
## 1_25 0 0 0 0 0 0 0 0 0 0 0 0
## 1_29 0 0 0 0 0 0 0 0 0 0 0 0
## 1_21 0 0 0 0 0 0 0 0 0 0 0 0
## 1_33 0 0 0 0 0 0 0 0 0 0 0 0
## 1_37 0 0 0 0 0 0 0 0 0 0 0 0
## 1_36 0 0 0 0 0 0 0 0 0 0 0 0
## 1_31 0 0 0 0 0 0 0 0 0 0 0 0
## 1_39 0 0 0 0 0 0 0 0 0 0 0 0
## 1_38 0 0 0 0 0 0 0 0 0 0 0 0
## 1_32 0 0 0 0 0 0 0 0 0 0 0 0
## 1_40 0 0 0 0 0 0 0 0 0 0 0 0
## 1_34 0 0 0 0 0 0 0 0 0 0 0 0
## 1_35 0 0 0 0 0 0 0 0 0 0 0 0
## 1_44 0 0 0 0 0 0 0 0 0 0 0 0
## 1_45 0 0 0 0 0 0 0 0 0 0 0 0
## 1_43 0 0 0 0 0 0 0 0 0 0 0 0
## 1_41 0 0 0 0 0 0 0 0 0 0 0 0
## 1_47 0 0 0 0 0 0 0 0 0 0 0 0
## 1_49 0 0 0 0 0 0 0 0 0 0 0 0
## 1_46 0 0 0 0 0 0 0 0 0 0 0 0
## 1_50 0 0 0 0 0 0 0 0 0 0 0 0
## 1_42 0 0 0 0 0 0 0 0 0 0 0 0
## 1_48 0 0 0 0 0 0 0 0 0 0 0 0
## 2_18 0 0 0 0 0 0 0 0 0 0 0 0
## 2_16 0 0 0 0 0 0 0 0 0 0 0 0
## 2_15 0 0 0 0 0 0 0 0 0 0 0 0
## 2_13 0 0 0 0 0 0 0 0 0 0 0 0
## 2_9 0 0 0 0 0 0 0 0 0 0 0 0
## 2_20 0 0 0 0 0 0 0 0 0 0 0 0
## 2_10 0 0 0 0 0 0 0 0 0 0 0 0
## 2_8 0 0 0 0 0 0 0 0 0 0 0 0
## 2_17 0 0 0 0 0 0 0 0 0 0 0 0
## 2_19 0 0 0 0 0 0 0 0 0 0 0 0
## 2_4 0 0 0 0 0 0 0 0 0 0 0 0
## 2_6 0 0 0 0 0 0 0 0 0 0 0 0
## 2_11 0 0 0 0 0 0 0 0 0 0 0 0
## 2_3 0 0 0 0 0 0 0 0 0 0 0 0
## 2_1 0 0 0 0 0 0 0 0 0 0 0 0
## 2_12 0 0 0 0 0 0 0 0 0 0 0 0
## 2_2 0 0 0 0 0 0 0 0 0 0 0 0
## 2_5 0 0 0 0 0 0 0 0 0 0 0 0
## 2_14 0 0 0 0 0 0 0 0 0 0 0 0
## 2_7 0 0 0 0 0 0 0 0 0 0 0 0
## 2_24 1 1 1 1 1 1 1 1 1 1 1 1
## 2_30 1 1 1 1 1 1 1 1 1 1 1 1
## 2_22 1 1 1 1 1 1 1 1 1 1 1 1
## 2_23 1 1 1 1 1 1 1 1 1 1 1 1
## 2_27 1 1 1 1 1 1 1 1 1 1 1 1
## 2_28 1 1 1 1 1 1 1 1 1 1 1 1
## 2_26 1 1 1 1 1 1 1 1 1 1 1 1
## 2_25 1 1 1 1 1 1 1 1 1 1 1 1
## 2_29 1 1 1 1 1 1 1 1 1 1 1 1
## 2_21 1 1 1 1 1 1 1 1 1 1 1 1
## 2_33 0 0 0 0 0 0 0 0 0 0 0 0
## 2_37 0 0 0 0 0 0 0 0 0 0 0 0
## 2_36 0 0 0 0 0 0 0 0 0 0 0 0
## 2_31 0 0 0 0 0 0 0 0 0 0 0 0
## 2_39 0 0 0 0 0 0 0 0 0 0 0 0
## 2_38 0 0 0 0 0 0 0 0 0 0 0 0
## 2_32 0 0 0 0 0 0 0 0 0 0 0 0
## 2_40 0 0 0 0 0 0 0 0 0 0 0 0
## 2_34 0 0 0 0 0 0 0 0 0 0 0 0
## 2_35 0 0 0 0 0 0 0 0 0 0 0 0
## 2_44 0 0 0 0 0 0 0 0 0 0 0 0
## 2_45 0 0 0 0 0 0 0 0 0 0 0 0
## 2_43 0 0 0 0 0 0 0 0 0 0 0 0
## 2_41 0 0 0 0 0 0 0 0 0 0 0 0
## 2_47 0 0 0 0 0 0 0 0 0 0 0 0
## 2_49 0 0 0 0 0 0 0 0 0 0 0 0
## 2_46 0 0 0 0 0 0 0 0 0 0 0 0
## 2_50 0 0 0 0 0 0 0 0 0 0 0 0
## 2_42 0 0 0 0 0 0 0 0 0 0 0 0
## 2_48 0 0 0 0 0 0 0 0 0 0 0 0
## 3_18 0 0 0 0 0 0 0 0 0 0 0 0
## 3_16 0 0 0 0 0 0 0 0 0 0 0 0
## 3_15 0 0 0 0 0 0 0 0 0 0 0 0
## 3_13 0 0 0 0 0 0 0 0 0 0 0 0
## 3_9 0 0 0 0 0 0 0 0 0 0 0 0
## 3_20 0 0 0 0 0 0 0 0 0 0 0 0
## 3_10 0 0 0 0 0 0 0 0 0 0 0 0
## 3_8 0 0 0 0 0 0 0 0 0 0 0 0
## 3_17 0 0 0 0 0 0 0 0 0 0 0 0
## 3_19 0 0 0 0 0 0 0 0 0 0 0 0
## 3_4 0 0 0 0 0 0 0 0 0 0 0 0
## 3_6 0 0 0 0 0 0 0 0 0 0 0 0
## 3_11 0 0 0 0 0 0 0 0 0 0 0 0
## 3_3 0 0 0 0 0 0 0 0 0 0 0 0
## 3_1 0 0 0 0 0 0 0 0 0 0 0 0
## 3_12 0 0 0 0 0 0 0 0 0 0 0 0
## 3_2 0 0 0 0 0 0 0 0 0 0 0 0
## 3_5 0 0 0 0 0 0 0 0 0 0 0 0
## 3_14 0 0 0 0 0 0 0 0 0 0 0 0
## 3_7 0 0 0 0 0 0 0 0 0 0 0 0
## 3_24 0 0 0 0 0 0 0 0 0 0 0 0
## 3_30 0 0 0 0 0 0 0 0 0 0 0 0
## 3_22 0 0 0 0 0 0 0 0 0 0 0 0
## 3_23 0 0 0 0 0 0 0 0 0 0 0 0
## 3_27 0 0 0 0 0 0 0 0 0 0 0 0
## 3_28 0 0 0 0 0 0 0 0 0 0 0 0
## 3_26 0 0 0 0 0 0 0 0 0 0 0 0
## 3_25 0 0 0 0 0 0 0 0 0 0 0 0
## 3_29 0 0 0 0 0 0 0 0 0 0 0 0
## 3_21 0 0 0 0 0 0 0 0 0 0 0 0
## 3_33 1 1 1 1 1 1 1 1 1 1 1 1
## 3_37 1 1 1 1 1 1 1 1 1 1 1 1
## 3_36 1 1 1 1 1 1 1 1 1 1 1 1
## 3_31 1 1 1 1 1 1 1 1 1 1 1 1
## 3_39 1 1 1 1 1 1 1 1 1 1 1 1
## 3_38 1 1 1 1 1 1 1 1 1 1 1 1
## 3_32 1 1 1 1 1 1 1 1 1 1 1 1
## 3_40 1 1 1 1 1 1 1 1 1 1 1 1
## 3_34 1 1 1 1 1 1 1 1 1 1 1 1
## 3_35 1 1 1 1 1 1 1 1 1 1 1 1
## 3_44 0 0 0 0 0 0 0 0 0 0 0 0
## 3_45 0 0 0 0 0 0 0 0 0 0 0 0
## 3_43 0 0 0 0 0 0 0 0 0 0 0 0
## 3_41 0 0 0 0 0 0 0 0 0 0 0 0
## 3_47 0 0 0 0 0 0 0 0 0 0 0 0
## 3_49 0 0 0 0 0 0 0 0 0 0 0 0
## 3_46 0 0 0 0 0 0 0 0 0 0 0 0
## 3_50 0 0 0 0 0 0 0 0 0 0 0 0
## 3_42 0 0 0 0 0 0 0 0 0 0 0 0
## 3_48 0 0 0 0 0 0 0 0 0 0 0 0
## 4_18 0 0 0 0 0 0 0 0 0 0 0 0
## 4_16 0 0 0 0 0 0 0 0 0 0 0 0
## 4_15 0 0 0 0 0 0 0 0 0 0 0 0
## 4_13 0 0 0 0 0 0 0 0 0 0 0 0
## 4_9 0 0 0 0 0 0 0 0 0 0 0 0
## 4_20 0 0 0 0 0 0 0 0 0 0 0 0
## 4_10 0 0 0 0 0 0 0 0 0 0 0 0
## 4_8 0 0 0 0 0 0 0 0 0 0 0 0
## 4_17 0 0 0 0 0 0 0 0 0 0 0 0
## 4_19 0 0 0 0 0 0 0 0 0 0 0 0
## 4_4 0 0 0 0 0 0 0 0 0 0 0 0
## 4_6 0 0 0 0 0 0 0 0 0 0 0 0
## 4_11 0 0 0 0 0 0 0 0 0 0 0 0
## 4_3 0 0 0 0 0 0 0 0 0 0 0 0
## 4_1 0 0 0 0 0 0 0 0 0 0 0 0
## 4_12 0 0 0 0 0 0 0 0 0 0 0 0
## 4_2 0 0 0 0 0 0 0 0 0 0 0 0
## 4_5 0 0 0 0 0 0 0 0 0 0 0 0
## 4_14 0 0 0 0 0 0 0 0 0 0 0 0
## 4_7 0 0 0 0 0 0 0 0 0 0 0 0
## 4_24 0 0 0 0 0 0 0 0 0 0 0 0
## 4_30 0 0 0 0 0 0 0 0 0 0 0 0
## 4_22 0 0 0 0 0 0 0 0 0 0 0 0
## 4_23 0 0 0 0 0 0 0 0 0 0 0 0
## 4_27 0 0 0 0 0 0 0 0 0 0 0 0
## 4_28 0 0 0 0 0 0 0 0 0 0 0 0
## 4_26 0 0 0 0 0 0 0 0 0 0 0 0
## 4_25 0 0 0 0 0 0 0 0 0 0 0 0
## 4_29 0 0 0 0 0 0 0 0 0 0 0 0
## 4_21 0 0 0 0 0 0 0 0 0 0 0 0
## 4_33 0 0 0 0 0 0 0 0 0 0 0 0
## 4_37 0 0 0 0 0 0 0 0 0 0 0 0
## 4_36 0 0 0 0 0 0 0 0 0 0 0 0
## 4_31 0 0 0 0 0 0 0 0 0 0 0 0
## 4_39 0 0 0 0 0 0 0 0 0 0 0 0
## 4_38 0 0 0 0 0 0 0 0 0 0 0 0
## 4_32 0 0 0 0 0 0 0 0 0 0 0 0
## 4_40 0 0 0 0 0 0 0 0 0 0 0 0
## 4_34 0 0 0 0 0 0 0 0 0 0 0 0
## 4_35 0 0 0 0 0 0 0 0 0 0 0 0
## 4_44 1 1 1 1 1 1 1 1 1 1 0 0
## 4_45 1 1 1 1 1 1 1 1 1 1 1 1
## 4_43 1 1 1 1 1 1 1 1 1 1 1 1
## 4_41 1 1 1 1 1 1 1 1 1 1 1 1
## 4_47 1 1 1 1 1 1 1 1 1 1 1 1
## 4_49 1 1 1 1 1 1 1 1 1 1 1 1
## 4_46 1 1 1 1 1 1 1 1 1 1 1 1
## 4_50 1 1 1 1 1 1 1 1 1 1 1 1
## 4_42 1 1 1 1 1 1 1 1 1 1 1 1
## 4_48 1 1 1 1 1 1 1 1 1 1 1 1
##
## cast> #Tips example
## cast> dcast(melt(tips), sex ~ smoker, mean, subset = .(variable == "total_bill"))
## Using sex, smoker, day, time as id variables
## sex No Yes
## 1 Female 18.10519 17.97788
## 2 Male 19.79124 22.28450
##
## cast> ff_d <- melt(french_fries, id=1:4, na.rm=TRUE)
##
## cast> acast(ff_d, subject ~ time, length)
## 1 2 3 4 5 6 7 8 9 10
## 3 30 30 30 30 30 30 30 30 30 0
## 10 30 30 30 30 30 30 30 30 30 30
## 15 30 30 30 30 25 30 30 30 30 30
## 16 30 30 30 30 30 30 30 29 30 30
## 19 30 30 30 30 30 30 30 30 30 30
## 31 30 30 30 30 30 30 30 30 0 30
## 51 30 30 30 30 30 30 30 30 30 30
## 52 30 30 30 30 30 30 30 30 30 30
## 63 30 30 30 30 30 30 30 30 30 30
## 78 30 30 30 30 30 30 30 30 30 30
## 79 30 30 30 30 30 30 29 28 30 0
## 86 30 30 30 30 30 30 30 30 0 30
##
## cast> acast(ff_d, subject ~ time, length, fill=0)
## 1 2 3 4 5 6 7 8 9 10
## 3 30 30 30 30 30 30 30 30 30 0
## 10 30 30 30 30 30 30 30 30 30 30
## 15 30 30 30 30 25 30 30 30 30 30
## 16 30 30 30 30 30 30 30 29 30 30
## 19 30 30 30 30 30 30 30 30 30 30
## 31 30 30 30 30 30 30 30 30 0 30
## 51 30 30 30 30 30 30 30 30 30 30
## 52 30 30 30 30 30 30 30 30 30 30
## 63 30 30 30 30 30 30 30 30 30 30
## 78 30 30 30 30 30 30 30 30 30 30
## 79 30 30 30 30 30 30 29 28 30 0
## 86 30 30 30 30 30 30 30 30 0 30
##
## cast> dcast(ff_d, treatment ~ variable, mean, margins = TRUE)
## treatment potato buttery grassy rancid painty (all)
## 1 1 6.887931 1.780087 0.6491379 4.065517 2.583621 3.194478
## 2 2 7.001724 1.973913 0.6629310 3.624569 2.455844 3.146413
## 3 3 6.967965 1.717749 0.6805195 3.866667 2.525541 3.151688
## 4 (all) 6.952518 1.823699 0.6641727 3.852230 2.521758 3.164218
##
## cast> dcast(ff_d, treatment + subject ~ variable, mean, margins="treatment")
## treatment subject potato buttery grassy rancid painty
## 1 1 3 6.216667 0.3722222 0.18888889 2.1055556 3.11111111
## 2 1 10 9.955000 6.7500000 0.58500000 4.0200000 1.37500000
## 3 1 15 3.360000 0.7200000 0.42000000 3.9650000 3.26000000
## 4 1 16 6.495000 3.2600000 0.75500000 4.1200000 1.23000000
## 5 1 19 9.385000 3.0550000 2.02000000 5.3600000 2.77500000
## 6 1 31 8.844444 0.4444444 0.08888889 5.9444444 3.21111111
## 7 1 51 10.675000 2.6400000 1.05000000 5.1500000 1.95500000
## 8 1 52 5.060000 0.8050000 0.87500000 4.2850000 2.64500000
## 9 1 63 6.775000 0.0250000 0.00000000 6.0550000 3.85500000
## 10 1 78 3.620000 0.7350000 0.54000000 1.5050000 3.49000000
## 11 1 79 8.061111 0.2823529 0.34444444 0.5666667 0.00000000
## 12 1 86 4.183333 1.7722222 0.80555556 5.4944444 4.10555556
## 13 2 3 6.738889 0.5888889 0.10555556 3.1388889 2.47777778
## 14 2 10 9.995000 6.9800000 0.47500000 2.1500000 0.82000000
## 15 2 15 4.405000 1.3150000 0.34000000 2.2850000 2.06000000
## 16 2 16 6.450000 3.3736842 1.05500000 3.4000000 0.45500000
## 17 2 19 8.640000 2.4500000 1.13500000 5.4050000 4.15500000
## 18 2 31 8.033333 0.6166667 0.15555556 6.0500000 5.06111111
## 19 2 51 9.985000 3.7950000 1.57000000 4.6700000 2.25500000
## 20 2 52 5.515000 1.0250000 1.18000000 4.2250000 2.19500000
## 21 2 63 8.415000 0.1050000 0.01000000 5.0900000 4.35500000
## 22 2 78 3.780000 0.2950000 0.75500000 1.5500000 2.72500000
## 23 2 79 7.938889 0.6941176 0.25555556 1.0333333 0.00000000
## 24 2 86 3.994444 2.0611111 0.78333333 4.5222222 2.84444444
## 25 3 3 5.294444 0.7666667 0.09444444 2.8555556 2.86666667
## 26 3 10 10.030000 6.4500000 0.14500000 3.1100000 0.69000000
## 27 3 15 3.963158 0.9894737 0.44210526 2.5473684 2.36842105
## 28 3 16 6.860000 2.7000000 1.12500000 3.2000000 0.55500000
## 29 3 19 8.740000 1.7250000 2.07000000 7.2400000 3.90500000
## 30 3 31 9.027778 0.6500000 0.17222222 6.5777778 5.12777778
## 31 3 51 10.220000 3.1300000 1.35000000 4.9150000 2.54500000
## 32 3 52 5.475000 0.8650000 0.76500000 3.1600000 2.66000000
## 33 3 63 8.060000 0.0650000 0.12500000 6.1850000 3.10000000
## 34 3 78 4.000000 0.7050000 0.66500000 1.1850000 3.52000000
## 35 3 79 7.733333 0.5722222 0.11666667 1.1777778 0.02777778
## 36 3 86 3.866667 1.6333333 0.94444444 4.1055556 3.02777778
## 37 (all) (all) 6.952518 1.8236994 0.66417266 3.8522302 2.52175793
##
## cast> if (require("lattice")) {
## cast+ lattice::xyplot(`1` ~ `2` | variable, dcast(ff_d, ... ~ rep), aspect="iso")
## cast+ }
each(min, max)(1:10)
来自plyr包,多个函数同时使用。
##
## each> # Call min() and max() on the vector 1:10
## each> each(min, max)(1:10)
## Error: attempt to apply non-function
来自plyr包
.变量名 = ‘变量名’, 不表示变量的值
用于垃圾回收
cSplit(indt, splitCols, sep = ",", direction = "wide", fixed = TRUE,
drop = TRUE, stripWhite = TRUE, makeEqual = NULL, type.convert = TRUE)
来自splitstackshape包,将单元格的数据进行变长变宽操作.拆分单元格,并将其他单元格数据重复显示。
indt为输入变量,data.frame或data.table
splitCols 为操作的列,对此列中的单元格进行操作
seq 分隔符, 对单元格中的数据安装seq进行分割
direction 操作方式, ‘wide’表示变宽,新增加列,来分割单元格, ‘long’ 表示变长, 即单元格分割后进入下一列,其他列数据复制进入下一列。
##
## cSplit> ## Sample data
## cSplit> temp <- head(concat.test)
##
## cSplit> ## Split the "Likes" column
## cSplit> cSplit(temp, "Likes")
## Name Siblings Hates Likes_1 Likes_2 Likes_3
## 1: Boyd Reynolds , Albert , Ortega 2;4; 1 2 4
## 2: Rufus Cohen , Bert , Montgomery 1;2;3;4; 1 2 4
## 3: Dana Pierce 2; 1 2 4
## 4: Carole Colon , Michelle , Ballard 1;4; 1 2 4
## 5: Ramona Snyder , Joann , 1;2;3; 1 2 5
## 6: Kelley James , Roxanne , 1;4; 1 2 5
## Likes_4 Likes_5
## 1: 5 6
## 2: 5 6
## 3: 5 6
## 4: 5 6
## 5: 6 NA
## 6: 6 NA
##
## cSplit> ## Split the "Likes" and "Hates" columns --
## cSplit> ## they have different delimiters...
## cSplit> cSplit(temp, c("Likes", "Hates"), c(",", ";"))
## Name Siblings Likes_1 Likes_2 Likes_3 Likes_4
## 1: Boyd Reynolds , Albert , Ortega 1 2 4 5
## 2: Rufus Cohen , Bert , Montgomery 1 2 4 5
## 3: Dana Pierce 1 2 4 5
## 4: Carole Colon , Michelle , Ballard 1 2 4 5
## 5: Ramona Snyder , Joann , 1 2 5 6
## 6: Kelley James , Roxanne , 1 2 5 6
## Likes_5 Hates_1 Hates_2 Hates_3 Hates_4 Hates_5
## 1: 6 2 4 NA NA NA
## 2: 6 1 2 3 4 NA
## 3: 6 2 NA NA NA NA
## 4: 6 1 4 NA NA NA
## 5: NA 1 2 3 NA NA
## 6: NA 1 4 NA NA NA
##
## cSplit> ## Split "Siblings" into a long form...
## cSplit> cSplit(temp, "Siblings", ",", direction = "long")
## Name Likes Siblings Hates
## 1: Boyd 1,2,4,5,6 Reynolds 2;4;
## 2: Boyd 1,2,4,5,6 Albert 2;4;
## 3: Boyd 1,2,4,5,6 Ortega 2;4;
## 4: Rufus 1,2,4,5,6 Cohen 1;2;3;4;
## 5: Rufus 1,2,4,5,6 Bert 1;2;3;4;
## 6: Rufus 1,2,4,5,6 Montgomery 1;2;3;4;
## 7: Dana 1,2,4,5,6 Pierce 2;
## 8: Carole 1,2,4,5,6 Colon 1;4;
## 9: Carole 1,2,4,5,6 Michelle 1;4;
## 10: Carole 1,2,4,5,6 Ballard 1;4;
## 11: Ramona 1,2,5,6 Snyder 1;2;3;
## 12: Ramona 1,2,5,6 Joann 1;2;3;
## 13: Kelley 1,2,5,6 James 1;4;
## 14: Kelley 1,2,5,6 Roxanne 1;4;
##
## cSplit> ## Split "Siblings" into a long form, removing extra whitespace
## cSplit> cSplit(temp, "Siblings", ",", direction = "long", stripWhite = TRUE)
## Name Likes Siblings Hates
## 1: Boyd 1,2,4,5,6 Reynolds 2;4;
## 2: Boyd 1,2,4,5,6 Albert 2;4;
## 3: Boyd 1,2,4,5,6 Ortega 2;4;
## 4: Rufus 1,2,4,5,6 Cohen 1;2;3;4;
## 5: Rufus 1,2,4,5,6 Bert 1;2;3;4;
## 6: Rufus 1,2,4,5,6 Montgomery 1;2;3;4;
## 7: Dana 1,2,4,5,6 Pierce 2;
## 8: Carole 1,2,4,5,6 Colon 1;4;
## 9: Carole 1,2,4,5,6 Michelle 1;4;
## 10: Carole 1,2,4,5,6 Ballard 1;4;
## 11: Ramona 1,2,5,6 Snyder 1;2;3;
## 12: Ramona 1,2,5,6 Joann 1;2;3;
## 13: Kelley 1,2,5,6 James 1;4;
## 14: Kelley 1,2,5,6 Roxanne 1;4;
##
## cSplit> ## Split a vector
## cSplit> y <- c("a_b_c", "a_b", "c_a_b")
##
## cSplit> cSplit(as.data.table(y), "y", "_")
## y_1 y_2 y_3
## 1: a b c
## 2: a b NA
## 3: c a b
来自 IRanges, 将字符串倒置
##
## revers> ## On a character vector:
## revers> reverse(c("Hi!", "How are you?"))
## [1] "!iH" "?uoy era woH"
##
## revers> rev(c("Hi!", "How are you?"))
## [1] "How are you?" "Hi!"
##
## revers> ## On a Views object:
## revers> v <- successiveViews(Rle(c(-0.5, 12.3, 4.88), 4:2), 1:4)
##
## revers> v
## Views on a 9-length Rle subject
##
## views:
## start end width
## [1] 1 1 1 [-0.5]
## [2] 2 3 2 [-0.5 -0.5]
## [3] 4 6 3 [-0.5 12.3 12.3]
## [4] 7 10 4 [12.30 4.88 4.88 ...]
##
## revers> reverse(v)
## Views on a 9-length Rle subject
##
## views:
## start end width
## [1] 9 9 1 [-0.5]
## [2] 7 8 2 [-0.5 -0.5]
## [3] 4 6 3 [12.3 12.3 -0.5]
## [4] 0 3 4 [ 4.88 4.88 12.30 ...]
##
## revers> rev(v)
## Views on a 9-length Rle subject
##
## views:
## start end width
## [1] 7 10 4 [12.30 4.88 4.88 ...]
## [2] 4 6 3 [-0.5 12.3 12.3]
## [3] 2 3 2 [-0.5 -0.5]
## [4] 1 1 1 [-0.5]
##
## revers> ## On a MaskCollection object:
## revers> mask1 <- Mask(mask.width=29, start=c(11, 25, 28), width=c(5, 2, 2))
##
## revers> mask2 <- Mask(mask.width=29, start=c(3, 10, 27), width=c(5, 8, 1))
##
## revers> mask3 <- Mask(mask.width=29, start=c(7, 12), width=c(2, 4))
##
## revers> mymasks <- append(append(mask1, mask2), mask3)
##
## revers> reverse(mymasks)
## MaskCollection of length 3 and width 29
## masks:
## maskedwidth maskedratio active
## 1 9 0.3103448 TRUE
## 2 14 0.4827586 TRUE
## 3 6 0.2068966 TRUE
## all masks together:
## maskedwidth maskedratio
## 19 0.6551724
来自Biostrings包 complement 对DNA,RAN取互补链,reverseComplement 取互补链后倒置
此函数接受变量必须为 DNAString() 或 RNAString()
来自Biostring包, 对DNA, RNA序列进行操作,同时可以组合进行dna2rna的转换
dna2rna() = RNAString(DNAString())
writeLines(text, con = stdout(), sep = "\n", useBytes = FALSE)
来自base包, text 为你要写入的字符串, con 表示一个文件里连接, 可以直接写入文件的路径,但是这样的话以前的内容会被重写,如果想附加到之前的内容后面,可以用file(path, open = ‘a’)来定义一个文件连接。
需要注意的是如果使用file(),使用完writeLines后必须,close(文件连接)否则缓存不会写入文件
如果要把因子型变量 coercion to 数值型,一定要先as.charactor(), 再 as.numeric(), 直接as.numeric(),因子型变量会按照1,2,3…的顺序去赋值,后果不堪设想。
chartr(old, new, x)
来自base包,用new替换old, 类似于sub
apropos("\\.test$")
utils包,寻找当前状态下,以.test结尾(regular expression)的函数
## [1] "ansari.test" "bartlett.test" "binom.test"
## [4] "Box.test" "chisq.test" "concat.test"
## [7] "cor.test" "fisher.test" "fligner.test"
## [10] "friedman.test" "kruskal.test" "ks.test"
## [13] "mantelhaen.test" "mauchly.test" "mcnemar.test"
## [16] "mood.test" "oneway.test" "pairwise.prop.test"
## [19] "pairwise.t.test" "pairwise.wilcox.test" "poisson.test"
## [22] "power.anova.test" "power.prop.test" "power.t.test"
## [25] "PP.test" "prop.test" "prop.trend.test"
## [28] "quade.test" "shapiro.test" "t.test"
## [31] "var.test" "wilcox.test"
interp(~ x + y, x = 10)
interp(lazy(x + y), x = 10)
interp(quote(x + y), x = 10)
interp("x + y", x = 10)
lazyeval包中的函数。 说实话,不理解这个函数,也不理解Non-Standard, 开始理解错了,以后补上吧。
##
## interp> # Interp works with formulas, lazy objects, quoted calls and strings
## interp> interp(~ x + y, x = 10)
## ~10 + y
##
## interp> interp(lazy(x + y), x = 10)
##
## expr: 10 + y
## env:
##
## interp> interp(quote(x + y), x = 10)
## 10 + y
##
## interp> interp("x + y", x = 10)
## [1] "10 + y"
##
## interp> # Use as.name if you have a character string that gives a
## interp> # variable name
## interp> interp(~ mean(var), var = as.name("mpg"))
## ~mean(mpg)
##
## interp> # or supply the quoted name directly
## interp> interp(~ mean(var), var = quote(mpg))
## ~mean(mpg)
##
## interp> # Or a function!
## interp> interp(~ f(a, b), f = as.name("+"))
## ~a + b
##
## interp> # Remember every action in R is a function call:
## interp> # http://adv-r.had.co.nz/Functions.html#all-calls
## interp>
## interp> # If you've built up a list of values through some other
## interp> # mechanism, use .values
## interp> interp(~ x + y, .values = list(x = 10))
## ~10 + y
##
## interp> # You can also interpolate variables defined in the current
## interp> # environment, but this is a little risky.
## interp> y <- 10
##
## interp> interp(~ x + y, .values = environment())
## ~x + 10
library(knitr)
knit('/Users/lipidong/baiduyun/work/RFile/MarkDown/funSet.Rmd', output = '~/learn/blog/_posts/2015-04-12-funSet.md')