作者:天天多派对_272 | 来源:互联网 | 2023-02-04 11:03
管道和tidyverse有时非常方便.用户想要将一列从一种类型转换为另一种类型.
像这样:
mtcars$qsec <-as.integer(mtcars$qsec)
这需要输入我需要的两倍.请不要建议使用"with"命令,因为我觉得它使用起来很混乱.
什么是tidyverse和magrittr%<>%的方式以最少的打字量做同样的事情?另外,如果qsec是第6列,我该怎么做才引用列位置.像(不正确的代码)
mtcars %<>% mutate(as.integer,qsec)
mtcars %<>% mutate(as.integer,[[6]])
userJT..
9
只需输入一次对列的引用 - 符合要求的答案就是
mtcars %<>% mutate_at(6, as.integer)
要按名称引用列,具有一个列名称的冗余类型的解决方案是
mtcars %<>% mutate(qsec = as.integer(qsec))
注意:信用额用于评论上述用户
1> userJT..:
只需输入一次对列的引用 - 符合要求的答案就是
mtcars %<>% mutate_at(6, as.integer)
要按名称引用列,具有一个列名称的冗余类型的解决方案是
mtcars %<>% mutate(qsec = as.integer(qsec))
注意:信用额用于评论上述用户
2> Agile Bean..:
该解决方案可能是最短的:
mtcars$qsec %<>% as.integer
诀窍是直接在列上执行强制转换操作>不再需要mutate()。