gpt4 book ai didi

r - dplyr:如何使用 mutate 按列索引而不是列名称引用列?

转载 作者:行者123 更新时间:2023-12-01 17:31:48 26 4
gpt4 key购买 nike

使用 dplyr,您可以执行以下操作:

iris %>% head %>% mutate(sum=Sepal.Length + Sepal.Width) 
Sepal.Length Sepal.Width Petal.Length Petal.Width Species sum
1 5.1 3.5 1.4 0.2 setosa 8.6
2 4.9 3.0 1.4 0.2 setosa 7.9
3 4.7 3.2 1.3 0.2 setosa 7.9
4 4.6 3.1 1.5 0.2 setosa 7.7
5 5.0 3.6 1.4 0.2 setosa 8.6
6 5.4 3.9 1.7 0.4 setosa 9.3

但在上面,我通过列名称引用了这些列。如何使用列索引 12 来获得相同的结果?

这里我有以下内容,但我觉得它不太优雅。

iris %>% head %>% mutate(sum=apply(select(.,1,2),1,sum))
Sepal.Length Sepal.Width Petal.Length Petal.Width Species sum
1 5.1 3.5 1.4 0.2 setosa 8.6
2 4.9 3.0 1.4 0.2 setosa 7.9
3 4.7 3.2 1.3 0.2 setosa 7.9
4 4.6 3.1 1.5 0.2 setosa 7.7
5 5.0 3.6 1.4 0.2 setosa 8.6
6 5.4 3.9 1.7 0.4 setosa 9.3

最佳答案

你可以尝试:

iris %>% head %>% mutate(sum = .[[1]] + .[[2]])

Sepal.Length Sepal.Width Petal.Length Petal.Width Species sum
1 5.1 3.5 1.4 0.2 setosa 8.6
2 4.9 3.0 1.4 0.2 setosa 7.9
3 4.7 3.2 1.3 0.2 setosa 7.9
4 4.6 3.1 1.5 0.2 setosa 7.7
5 5.0 3.6 1.4 0.2 setosa 8.6
6 5.4 3.9 1.7 0.4 setosa 9.3

关于r - dplyr:如何使用 mutate 按列索引而不是列名称引用列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32618744/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com