gpt4 book ai didi

r - 使用mutate_at更改多种列类型

转载 作者:行者123 更新时间:2023-12-04 01:25:36 25 4
gpt4 key购买 nike

我正在尝试使用dplyr整理数据集。我要更改的列实际上是一个 double 字符串,但带有逗号而不是小数点。到目前为止,我得到了:

presupuesto_2016 <- read_csv( "http://datos.gob.ar/dataset/89f1a2dd-ad79-4211-87b4-44661d81ac0d/resource/84e23782-7d52-4724-a4ba-2f9621fa5f4e/download/presupuesto-2016.csv")

names(presupuesto_2016) <- str_replace(names(presupuesto_2016), "\uFEFF", "")

presupuesto_2016 %>%
mutate_at(starts_with("monto_"),
str_replace, pattern = ",", replacement = "\\.") %>%
mutate_at(starts_with("monto_"), funs(as.numeric))

但这设法将每一列更改为数字。我在这里做错了什么?

最佳答案

为什么不做:

URL <- "http://datos.gob.ar/dataset/89f1a2dd-ad79-4211-87b4-44661d81ac0d/resource/84e23782-7d52-4724-a4ba-2f9621fa5f4e/download/presupuesto-2016.csv"
presupuesto_2016 <- read_csv(URL, locale=locale(decimal_mark=","))

另外,我建议您这样做:
fil <- basename(URL)
if (!file.exists(fil)) download.file(URL, fil)
presupuesto_2016 <- read_csv(fil, locale=locale(decimal_mark=","))

以节省您和该站点的带宽,加快将来的处理速度,并确保在站点离线或您这样做的情况下都具有可重复性。

关于r - 使用mutate_at更改多种列类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39279724/

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