r - 如何在R中更改多个数据框的数据类型
问题描述
我有多个数据框的列表。
files_list <- list(data_04, data_05, data_06, data_07, data_08, data_09, data_010, data_011,
data_012, data_013, data_015, data_016, data_017, data_018)
我如何更改每列的数据类型,以便它们通过数据框匹配。所有数据框都具有相同的列和列名。我已经尝试过了,但它不起作用。
for (i in files_list) {
i %>%
mutate(ride_id = as.character(ride_id)) %>%
mutate(rideable_type = as.character(rideable_type)) %>%
mutate(started_at = as_datetime(started_at)) %>%
mutate(ended_at = as_datetime(ended_at)) %>%
mutate(start_station_name = as.character(start_station_name)) %>%
mutate(start_station_id = as.integer(start_station_id)) %>%
mutate(end_station_name = as.character(end_station_name)) %>%
mutate(end_station_id = as.integer(end_station_id)) %>%
mutate(start_lat = as.numeric(start_lat)) %>%
mutate(start_lng = as.numeric(start_lng)) %>%
mutate(end_lat = as.numeric(end_lat)) %>%
mutate(end_lng = as.numeric(end_lng)) %>%
mutate(member_casual = as.character(member_casual))
}
解决方案
你可以写一个函数然后用lapply()
就行了。
下面应该可以工作,但我不能确定,因为我不知道数据是什么样的。
EditDataFunction <- function(data){
clean_data <- data %>%
mutate(ride_id = as.character(ride_id)) %>%
mutate(rideable_type = as.character(rideable_type)) %>%
mutate(started_at = as_datetime(started_at)) %>%
mutate(ended_at = as_datetime(ended_at)) %>%
mutate(start_station_name = as.character(start_station_name)) %>%
mutate(start_station_id = as.integer(start_station_id)) %>%
mutate(end_station_name = as.character(end_station_name)) %>%
mutate(end_station_id = as.integer(end_station_id)) %>%
mutate(start_lat = as.numeric(start_lat)) %>%
mutate(start_lng = as.numeric(start_lng)) %>%
mutate(end_lat = as.numeric(end_lat)) %>%
mutate(end_lng = as.numeric(end_lng)) %>%
mutate(member_casual = as.character(member_casual))
return(clean_data)
}
clean_list <- lapply(files_list, EditDataFunction)
然后,如果您需要将它们全部绑定在一起,您可以使用data.table::rbindlist
推荐阅读
- javascript - socket.io 和 socket.io-redis:获取房间中的所有套接字对象
- html - 有没有办法从 Chrome 中获取明确的警告消息,而不仅仅是一个黄色三角形?
- python - pyspark rdd 到 dataframe 给出“Can not reduce() empty RDD”和自定义采样率
- react-native - 运行时类型错误:hmrClient.send 不是函数
- api - Nuxt 重新加载 api 数据失败
- swift - 从自定义 .plist 文件中读取用户定义的设置
- botframework - Microsoft Bot framework v4 中消息的跨平台文本格式和 UI 设计
- node.js - 如何在另一台机器上运行节点应用程序而不安装 nodemon 作为全局
- html - CSS中图像的文件路径
- typescript - 当泛型类型设置为从不时,泛型条件类型解析为从不