【R】如何去掉数据框中包含非数值的行?
https://www.cnblogs.com/jessepeng/p/12581180.html
2. 去掉指定列中包含其他乱七八糟字符串的行
- 总结下推荐用法
指定列,且只含有NA/Inf/NaN:
d[is.finite(d x ) , ] 指 定 列 , 含 有 其 他 字 符 : d [ i s . f i n i t e ( a s . n u m e r i c ( a s . c h a r a c t e r ( d x),] 指定列,含有其他字符: d[is.finite(as.numeric(as.character(d x),]指定列,含有其他字符:d[is.finite(as.numeric(as.character(dx))),]
不指定列,且只含有NA/Inf/NaN:
d[is.finite(rowSums(d)),]
IDPmisc::NaRV.omit(d)
不指定列,含有其他字符:
index <- apply(d,1,function(x){grepl("^\d+$",as.character(x))})
d[apply(index,2,function(x)all(x)),]
Ref:https://stackoverflow.com/questions/15773189/remove-na-nan-inf-in-a-matrix
https://www.thinbug.com/q/25276155
library(ggplot2)
library(ggrepel)
datamatrix_ori=read.csv(“LA_VS_HFD.csv”,header = TRUE,stringsAsFactors = FALSE)
datamatrix=na.omit(datamatrix_ori)
d=datamatrix
data=d[is.finite(as.numeric(as.character(d$ Log2FoldChange))),]
data
L
o
g
2
F
o
l
d
C
h
a
n
g
e
=
a
s
.
n
u
m
e
r
i
c
(
d
a
t
a
Log2FoldChange=as.numeric(data
Log2FoldChange=as.numeric(dataLog2FoldChange)
data
F
o
l
d
C
h
a
n
g
e
=
a
s
.
n
u
m
e
r
i
c
(
d
a
t
a
FoldChange=as.numeric(data
FoldChange=as.numeric(dataFoldChange)