停止 gather 函数丢弃因子标签
Stop gather function from dropping factor labels
我正在尝试使用 tidyr 中的收集功能 - 但它会从分解数据中剥离标签。我的数据看起来像这样:
> require(tidyr)
> messy = data.frame(x=rep(seq(0,2),2),y=runif(6),z=runif(6),source=c('good','bad'))
> messy
x y z source
1 0 0.37627685 0.9108316 good
2 1 0.77593147 0.9944256 bad
3 2 0.01105364 0.1183923 good
4 0 0.37755463 0.6761343 bad
5 1 0.86333114 0.7312482 good
6 2 0.69085345 0.8288506 bad
>tidy = gather(messy,coordinate,value,y:z)
>tidy
x source coordinate value
1 0 2 y 0.37627685
2 1 1 y 0.77593147
3 2 2 y 0.01105364
4 0 1 y 0.37755463
5 1 2 y 0.86333114
6 2 1 y 0.69085345
7 0 2 z 0.91083162
8 1 1 z 0.99442560
9 2 2 z 0.11839230
10 0 1 z 0.67613427
11 1 2 z 0.73124818
12 2 1 z 0.82885055
Tidy 已经按照广告收集了 y
和 z
变量,但是 source
变量现在是一个整数。
我做错了什么?
这是此处报告的错误:https://github.com/hadley/tidyr/issues/104
它似乎已在 tidyr 0.3.1 中修复
我正在尝试使用 tidyr 中的收集功能 - 但它会从分解数据中剥离标签。我的数据看起来像这样:
> require(tidyr)
> messy = data.frame(x=rep(seq(0,2),2),y=runif(6),z=runif(6),source=c('good','bad'))
> messy
x y z source
1 0 0.37627685 0.9108316 good
2 1 0.77593147 0.9944256 bad
3 2 0.01105364 0.1183923 good
4 0 0.37755463 0.6761343 bad
5 1 0.86333114 0.7312482 good
6 2 0.69085345 0.8288506 bad
>tidy = gather(messy,coordinate,value,y:z)
>tidy
x source coordinate value
1 0 2 y 0.37627685
2 1 1 y 0.77593147
3 2 2 y 0.01105364
4 0 1 y 0.37755463
5 1 2 y 0.86333114
6 2 1 y 0.69085345
7 0 2 z 0.91083162
8 1 1 z 0.99442560
9 2 2 z 0.11839230
10 0 1 z 0.67613427
11 1 2 z 0.73124818
12 2 1 z 0.82885055
Tidy 已经按照广告收集了 y
和 z
变量,但是 source
变量现在是一个整数。
我做错了什么?
这是此处报告的错误:https://github.com/hadley/tidyr/issues/104
它似乎已在 tidyr 0.3.1 中修复