热线电话:13121318867

登录
2018-10-24 阅读量: 885
怎么转换数据框指定数据类型
> str(query_GPS)

'data.frame':        13150 obs. of  9 variables:

$ id      : chr  "1010852" "1010852" "1010852" "1010852" ...

$ 车牌号码: chr  "鄂A3QD28" "鄂A3QD28" "鄂A3QD28" "鄂A3QD28" ...

$ 速度    : chr  "34.0" "33.0" "34.0" "0.0" ...

$ 经度    : chr  "114.299067" "114.312943" "114.328343" "114.327282" ...

$ 纬度    : chr  "30.642155" "30.687871" "30.742519" "30.662274" ...

$ 里程数  : chr  "10419.10" "10426.60" "10435.70" "10447.50" ...

$ 地址    : chr  "湖北省武汉市江岸区兴业南路 中百超市(盛世东方店)东北132米" "湖北省武汉市江岸区岱山二桥 岱家山大桥附近13米" "湖北省武汉市黄陂区 牌楼塆东南522米" "湖北省武汉市江岸区汉黄路 省客集团新荣客运站内,武汉市农村商业银行(岱山支行)北259米" ...

$ 点火时间: chr  "2018-09-01 12:38:59" "2018-09-01 13:00:20" "2018-09-01 14:06:20" "2018-09-01 14:30:01" ...

$ 熄火时间: chr  "2018-09-01 12:59:50" "2018-09-01 13:28:52" "2018-09-01 14:29:53" "2018-09-01 14:52:03" ...

数据框 中 各列数据 都是 chr 型;

我想 更改$ id : ,$ 速度 :  ,$ 经度 :,$ 纬度 :,$ 里程数 :  为数值型

$ 车牌号码: ,$ 地址 :  为  chr

$ 点火时间: ,$ 熄火时间:   为时间型
sapply(query_GPS, as.numeric)  这段代码 全部改变了类型 怎么指定需要更改 列?

解决方法参考:

library(tidyverse)

library(lubridate)

newData <- query_GPS %>%

  mutate_at(.vars = vars(id, 速度, 经度, 纬度, 里程数), .fun = as.numeric) %>%

  mutate_at(.vars = vars(点火时间, 熄火时间), .fun = as_date) %>%
  mutate(速度 = round(速度, 1))
0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子