数据库教程:R语言 实现将数据框中的字符类型数字转换为数值

场景1我现在有一个数据框datexpr,里面的数字都是以字符型表示的,像这样> datexpr[1,1][1] ” 1.143773961″现在我想把这个数据框中的字符型数字全部转为数值型数字使


场景1

我现在有一个数据框datexpr,里面的数字都是以字符型表示的,像这样

  > datexpr[1,1]  [1] " 1.143773961"

现在我想把这个数据框中的字符型数字全部转为数值型数字

使用下面语句即可

  datexpr2=as.data.frame(lapply(datexpr,as.numeric))

现在再次查看,就是数值型啦,整个数据框中的内容也都是数值型的啦

  > datexpr2[1,1]  [1] 1.143774

场景2

我现在有一个数据框datexp,我想先把它转置之后,然后再把数据框内的字符型数字 转换为数值型数字

由于转置之后数据框变成了矩阵,所以要用data.frame把矩阵又变回数据框,同时在转数据框的时候一定要加上stringsasfactors = f

不然之后做数值型数字转换的时候,得到的结果就不是原来的小数,而是一些奇怪的数字

  datexpr<-t(datexp)  datexpr<-data.frame(datexpr,stringsasfactors = f)   datexpr2=as.data.frame(lapply(datexpr,as.numeric))

补充:r中利用 apply() 将数据框中 factor 类型变量改为数值型

举个例子

  library(mlbench)  data(breastcancer)  str(breastcancer)

此时输出为:

R语言 实现将数据框中的字符类型数字转换为数值

  breastcancer1 <- apply(breastcancer[,2:10],2,as.numeric)  # 将2-10列的数据变成数值型  breastcancer <- data.frame(breastcancer1, breastcancer[,11])    names(breastcancer)[names(breastcancer) == 'breastcancer...11.'] <- 'class'  str(breastcancer)

此时输出结果为:

R语言 实现将数据框中的字符类型数字转换为数值

以上为个人经验,希望能给大家一个参考,也希望大家多多支持<计算机技术网(www.ctvol.com)!!>。如有错误或未考虑完全的地方,望不吝赐教。

需要了解更多数据库技术:R语言 实现将数据框中的字符类型数字转换为数值,都可以关注数据库技术分享栏目—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/dtteaching/808938.html

(0)
上一篇 2021年9月11日
下一篇 2021年9月11日

精彩推荐