簡體   English   中英

如何使用gsub清除數據中的字母?

[英]how can I clean letter from my data using gsub?

我有大數據集。 此數據是字母和數字在一起。 我想從數字中刪除所有字母。

marker g1 g2 g3
m1 0.2AA 0.7CC 0.2CC
m2 0.3TT 0.5GG 0.3TT

我用這些命令

data <- read.table(file.choose(), header=T)
a <- gsub("AA", "", data) # when i wanted to remove all AA

但是當我打開一個時,我發現所有數據都是沒有小數的數字和不同的數字,例如

152 1265 120 1254 

有什么幫助嗎? 提前致謝

如果我對您的理解正確,那么可以選擇。

library(data.table)
DT <- data.table(C1=replicate(3, paste0(round(runif(1), 2L), paste0(sample(LETTERS,2), collapse = ""))),
                 C2=replicate(3, paste0(round(runif(1), 2L), paste0(sample(LETTERS,2), collapse = ""))), 
                 C3=replicate(3, paste0(round(runif(1), 2L), paste0(sample(LETTERS,2), collapse = ""))))
       C1     C2     C3
1: 0.35TP 0.86DT  0.6DM
2: 0.52OG 0.39KJ 0.98CA
3: 0.27RT 0.62IR 0.28WJ
DT
DT[, lapply(.SD, function(x){gsub("[^\\.\\d]", "", x, perl = T) }), .SDcols=1:3]
     C1   C2   C3
1: 0.35 0.86  0.6
2: 0.52 0.39 0.98
3: 0.27 0.62 0.28

正則表達式將刪除數字和字符“。”以外的所有內容,因為您需要使用小數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM