read.delim之后作为因子的数字

read.delim之后作为因子的数字,r,R,我有一个如下所示的数据框: A B C D 1 2 3 4 E F G H 5 6 7 8 我只想使用以下代码对数字部分进行子集划分: sub_num = DF[sapply(DF, is.numeric)] 问题是,在使用read.delim读取data.frame之后,这些数字是因数。如果我设置stringsAsFact

我有一个如下所示的数据框:

 A      B      C      D       
 1      2      3      4   
 E      F      G      H     
 5      6      7      8    
我只想使用以下代码对数字部分进行子集划分:

 sub_num = DF[sapply(DF, is.numeric)] 
问题是,在使用
read.delim
读取data.frame之后,这些数字是因数。如果我设置
stringsAsFactors=FALSE
则数字为字符。
这可能是一个基本问题,但我无法解决它

请尝试以下方法

 sub_num <- DF[!is.na(as.numeric(sapply(DF, as.character)))[1:ncol(DF)], ]
 #     V1 V2 V3 V4
 #   2  1  2  3  4
 #   4  5  6  7  8 

但这不会像您预期的那样索引DF

首先使用as.character
sapply(DF, function(X) is.numeric(as.character(X)))