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

场景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)

此时输出为:

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)

此时输出结果为:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • 详解R语言中的表达式、数学公式、特殊符号

      在R语言的绘图函数中,如果文本参数是合法的R语言表达式,那么这个表达式就被用Tex类似的规则进行文本格式化. y <- function(x) (exp(-(x^2)/2))/sqrt(2*pi) plot(y, -5, 5, main = expression(f(x) == frac(1,sqrt(2*pi))*e^(-frac(x^2,2))), lwd = 3, col = "blue") library(ggplot2) x <- seq(0, 2*pi, b

  • R语言数据类型深入详解

    R语言用来存储数据的对象包括: 向量, 因子, 数组, 矩阵, 数据框, 时间序列(ts)以及列表 意义介绍 1. 向量(一维数据): 只能存放同一类型的数据 语法: c(data1, data2, ...),访问的时候下标从1开始(和Matlab相同);向量里面只能存放相同类型的数据. > x <- c(1,5,8,9,1,2,5) > x [1] 1 5 8 9 1 2 5 > y <- c(1,"zhao") # 这里面有integer和字符串, 整

  • R语言 实现list类型数据转换

    例如: > a=list(c('232','34'),c('good','bad'),c(1,5)) > a [[1]] [1] "232" "34" [[2]] [1] "good" "bad" [[3]] [1] 1 5 > names(a)=c('d','w','j') > a $d [1] "232" "34" $w [1] "good"

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

    场景1 我现在有一个数据框datexpr,里面的数字都是以字符型表示的,像这样 > datexpr[1,1] [1] " 1.143773961" 现在我想把这个数据框中的字符型数字全部转为数值型数字 使用下面语句即可 datexpr2=as.data.frame(lapply(datexpr,as.numeric)) 现在再次查看,就是数值型啦,整个数据框中的内容也都是数值型的啦 > datexpr2[1,1] [1] 1.143774 场景2 我现在有一个数据框date

  • R语言删除/添加数据框中的某一行/列

    假如数据是这样的,这是有一个数据框 > A <- data.frame(姓名 = c("张三", "李四", "王五"), 体重 = c(50, 70, 80), 视力 = c(5.0, 4.8, 5.2)) > A 姓名 体重 视力 1 张三 50 5.0 2 李四 70 4.8 3 王五 80 5.2 删除第一行"张三"的信息 > A <- A[-1,] > A 姓名 体重 视力 2 李

  • R语言列表和数据框的具体使用

    目录 1.列表 1.1创建 1.2 访问 1.3 注意 2.数据框 2.1 创建 2.2 访问 1.列表 列表“list”是一种比较的特别的对象集合,不同的序号对于不同的元素,当然元素的也可以是不同类型的,那么我们用R语言先简单来构造一个列表. 1.1创建 > a<-c(1:20) > b<-matrix(1:20,4,5) > mlist<-list(a,b) > mlist [[1]]  [1]  1  2  3  4  5  6  7  8  9 10 11

  • R语言-如何定义数据框的列名

    1.在定义数据框时,定义列名: 例如: a<-c(2,23,45,6,7,1,6,7) b<-c(4,6,1,2,5,66,10,2) df<-data.frame(a,b) 此时数据框df中的列名分别是a.b 也可以如下: df<-data.frame(a1=a,b1=b) 此时的列名是a1.b1 2.修改数据框中列的名字 如果希望修改数据框中的列名,可以使用name函数进行修改 例如: names(df)<-c("a2","b2")

  • R语言实现对数据框按某一列分组求组内平均值

    可使用aggregate函数 如: aggregate(.~ID,data=这个数据框名字,mean) 如果是对数据框分组,组内有重复的项,对于重复项保留最后一行数据用: pcm_df$duplicated <- duplicated(paste(pcm_df$OUT_MAT_NO, pcm_df$Posit, sep = "_"), fromLast = TRUE) pcm_df <- subset(pcm_df, !duplicated) pcm_df$duplicat

  • R语言数据框中的负索引介绍

    以R语言自带的mtcars数据框为例: 这是原始的mtcars数据: 这里只列出了前面几行数据. 然后负索引mtcars[,-2:-3],得到的结果 删除了第二列和第三列数据 所以R语言数据框中的负索引是指删除数据框中对应的列(或者行) ps:这和Python里面的规则好像不太一样,Python里的负索引好像是指倒数第几列(或者第几行),这里这两个软件区别还挺大的~~写个笔记提醒一下自己~ 补充:R语言中的负整数索引 看代码吧~ > x<-matrix(c(1,2,3,4,5,6,7,8,9)

  • R语言导入导出数据的几种方法汇总

    导出: 对于某一数据集导出文件的方法 导出例子:write.csv(data_1,file = "d:/1111111111.csv") 其中data_1是你的数据集,file是你的存储路径和要存储的名字 导入: 1  使用键盘输入数据 (1) 创建一个空数据框(或矩阵),其中变量名和变量的模式需与理想中的最终数据集一致: (2)针对这个数据对象调用文本编辑器,输入你的数据,并将结果保存回此数据对象中. 在下例中,你将创建一个名为mydata的数据框,它含有三个变量:age(数值型).

  • R语言导入CSV数据的简单方法

    第一.查看读取路径:getwd() ``` getwd() #获取文件存储位置 [1] "E:/R/meta-rbook-examples" #文件位置,如果是自己想要的存储位置可以直接将文件放到这里,如果不是更改路径. `` 第二.修改路径: setwd("E:/R")#设置新的路径`,将文件放入该文件夹中 第三.读取CSV文件: data1<-read.csv("dataset01.csv",as.is = TRUE)#读取文件名为:d

  • R语言对Web数据操作实例

    许多网站提供数据供其用户使用. 例如,世界卫生组织(WHO)以CSV,txt和XML文件的形式提供健康和医疗信息的报告. 使用R语言程序,我们可以从这些网站以编程方式提取特定数据. R语言中用于从网站中提取数据的一些包是"RCurl",XML"和"stringr",它们用于连接到URL,识别文件所需的链接并将它们下载到本地环境. 安装R语言的包 处理URL和链接到文件需要以下的包. 如果它们在R语言环境中不可用,您可以使用以下命令安装它们. install

  • 使用R语言绘制3D数据可视化scatter散点图实现步骤

    目录 Step1. 绘图数据的准备 Step2. 绘图数据的读取 Step3.绘图所需package的调用 Step4.绘图 调整3D点的大小 调整透明度 注意事项 它来了它来了,它顺着网线走来了…哈哈,今天小仙给大家带来的是3D散点图. 强调一下啊,咱们这个教程里第一次出现了3D图,第一次出现了交互式图形(简单粗暴的理解, 用鼠标点击会动的图) 今天主要给大家介绍一下plotly这个R包,顺便分享下3D散点图的画法.plotly是一个在线的数据分析和可视化工具,图表类型丰富.可交互等等一堆优点

随机推荐