我的虹膜数据集格式如下,
Species Sepal.Length Sepal.Width Petal.Length Petal.Width
setosa 5.1 3.5 1.4 0.2
setosa 4.9 3.0 1.4 0.2
setosa 4.7 3.2 1.3 0.2
setosa 4.6 3.1 1.5 0.2
setosa 5.0 3.6 1.4 0.2
setosa 5.4 3.9 1.7 0.4
我希望将其转换为以下格式,
Species Part Length Width
setosa Petal 1.4 0.2
setosa Petal 1.4 0.2
setosa Petal 1.3 0.2
setosa Petal 1.5 0.2
setosa Petal 1.4 0.2
setosa Petal 1.7 0.4
我能够使用tidyr包实现它。代码如下,
iris.wide <- iris %>%
gather(key, value, -Flower, -Species) %>%
separate(key, c("Part", "Measure"), "\\.") %>%
spread(Measure, value)
但我觉得很多代码/步骤都使用了收集,分离和传播函数。
我正在寻找更好/近距离的建议,如果有的话。