簡體   English   中英

根據另一個數據列中的值刪除字符串的一部分

[英]Removing part of a string based on values from another data column

我有一個學校的數據集,我想刪除學校前面的前綴,所以它只有學校名稱(有時是數字)。 該前綴也在另一列(tipo.organización)中列出,因此我想從tipo.organización中獲取值並將其從學校名稱中刪除(nombre.establecimiento)。

我嘗試使用gsub從名稱中刪除字符串的一部分,但是我不能只是將列名作為一組要更改的值來傳遞。 我如何才能遍歷每個值並將其與tipo.organizacion列進行比較,然后刪除不需要的內容?

data <- read.csv("...", header = TRUE)
data$nombre.establecimiento <- 
as.character(data$nombre.establecimiento)

#Remove Duplicates
new <- data[!duplicated(data$nombre.establecimiento),]

#tried to take out values from other column
new$nombre.establecimiento <- gsub(new$tipo.organización, '', 
new$nombre.establecimiento)

謝謝!!

鏈接到數據集

這個問題有一個類似的問題,並且有很多好的答案。 在您的情況下,更stringr方法如下所示:

new$nombre.establecimiento = str_replace_all(new$nombre.establecimiento,
                                             new$tipo.organización, '')

(我遵循了鏈接並獲得了原始數據集,可能您可能需要做一些額外的清理工作才能使它執行所需的操作。我發現tipo.organización的內容與開頭的內容之間存在很多差異nombre.establecimiento :帶重音/不帶重音的字符,多余的單詞等。當然,您可能已經在這樣做了!指向清理數據集的鏈接將有助於檢查這一部分問題。)

暫無
暫無

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

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