gpt4 book ai didi

r - 从字符串的data.frame猜测正确的列存储模式

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

给定data.frame仅包含字符串列(无因数),其中一些应保留为字符串,某些为整数,而某些为 double ,我如何猜测将字符串转换为的最合适的存储模式?

fixDf <- data.frame(isChar=c("A", "B", "C"), 
isDouble=c("0.01", "0.02", "0.03"),
isInteger=c("1", "2", "3"), stringsAsFactors=FALSE)

我想知道是否有一种简单的方法来确定需要执行以下操作,然后再执行以下操作:
mode(fixDf[, "isDouble"]) <- "double"
mode(fixDf[, "isInteger"]) <- "integer"

理想情况下,如果遇到错误,则用于处理此错误的函数会将数据保留为字符串形式。

最佳答案

您可以使用colwise包中的plyrtype.convert函数。

library(plyr)
foo = colwise(type.convert)(fixDf)

str(foo)


'data.frame': 3 obs. of 3 variables:
$ isChar : Factor w/ 3 levels "A","B","C": 1 2 3
$ isDouble : num 0.01 0.02 0.03
$ isInteger: int 1 2 3

或使用基数R:
as.data.frame(lapply(fixDf, type.convert))

关于r - 从字符串的data.frame猜测正确的列存储模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14325176/

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