簡體   English   中英

使用R替換字符

[英]Replacing characters using R

我有一個帶有1列“地址”的csv文件。 其值如下:

A <- structure(list(Address = structure(1:3, .Label = c("&2340 P St", 
 "&5656 N St", "456 B Street"), class = "factor")), .Names = "Address", 
 row.names = c(NA, 3L), class = "data.frame")
A
##        Address
## 1   &2340 P St
## 2   &5656 N St
## 3 456 B Street

我需要清除數據–如果有“&”,則擦除所有字符(或用空格替換)。 我期望在我的2.csv文件中獲得此結果:

##        Address
## 1 456 B Street

這是代碼:

 A <-read.csv("U:/161/1.csv", header=T,sep=",")
 B<-gsub("&", " ", A$ADDRESS1, ignore.case = TRUE)
 write.table(B, file = "U:/161/2.csv", sep = ","
 , col.names = NA, qmethod = "double")

它僅刪除“&”。 如何刪除其余地址?

使用grepgrepl識別哪些行包含&然后排除那些行

B <- droplevels(A[!grepl('&', A$Address), ,drop=FALSE])
B
##       Address
## 3 456 B Street

注意,我將[調用包裝在droplevels以確保也刪除未使用的水平(那些帶有&水平),因為在這種情況下,結果只會是1行,我添加了drop=FALSE來將B保留為data.frame

要使用grep (返回索引),您可以使用-

B <- droplevels(A[-grep('&', A$Address), ,drop=FALSE])
B

暫無
暫無

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

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