簡體   English   中英

在 R 中提取具有一些獨特字符的字符串

[英]Extract strings with SOME unique characters in R

這是我的 pb:我有 9 個字符串,所有字符串都是唯一的,但有共同的字符。 我想在其中提取具有一些獨特字符的字符,這些字符不存在於任何其他字符串中。 我認為將每個字符串與其他字符串進行比較的循環是一個不錯的選擇,但我不知道要使用哪個 function。我不能使用 unique() function,因為所有字符串都是唯一的。

這是字符串:

[1] ".contexte d'enseignement""
[2] “.contexte d'enseignement.cohérence avec le niveau des élèves””
[3] “.contexte d'enseignement.contraintes pratiques””
[4] “.contexte d'enseignement.contraintes pratiques.contrainte de temps””
[5] “.contexte d'enseignement.contraintes pratiques.contrainte matérielle””
[6] “.contexte d'enseignement.contraintes pratiques.faisabilité par rapport à la classe””
[7] “.contexte d'enseignement.objectifs de l'Education Nationale”
[8] ".contexte d'enseignement.objectifs de l'Education Nationale.adéquation avec le programme"" [9] ".contexte d'enseignement.objectifs de l'Education Nationale.progression de la difficulté""

這就是我正在等待的結果:

[1] “.contexte d'enseignement.cohérence avec le niveau des élèves””
[2] “.contexte d'enseignement.contraintes pratiques.contrainte de temps””
[3] “.contexte d'enseignement.contraintes pratiques.contrainte matérielle””
[4] “.contexte d'enseignement.contraintes pratiques.faisabilité par rapport à la classe””
[5] ".contexte d'enseignement.objectifs de l'Education Nationale.adéquation avec le programme"" [6] ".contexte d'enseignement.objectifs de l'Education Nationale.progression de la difficulté""

謝謝你的幫助 !

您可以使用sapply()這樣做。 在下面的代碼中, sapply()用於循環遍歷字符串中的所有觀察值。 它使用 stringr package 中的stringr str_detect()來識別str的第 i 個值是否在str的任何其他值中。 如果第 i 個字符串在任何其他字符串中,則將來自str_detect()的 output 包裝在any()中將評估為TRUE 然后您可以使用該結果對字符串進行子集化以創建所需的 output。

str <- c(".contexte d\'enseignement",
".contexte d\'enseignement.cohérence avec le niveau des élèves",
".contexte d\'enseignement.contraintes pratiques",
".contexte d\'enseignement.contraintes pratiques.contrainte de temps",
".contexte d\'enseignement.contraintes pratiques.contrainte matérielle",
".contexte d\'enseignement.contraintes pratiques.faisabilité par rapport à la classe",
".contexte d\'enseignement.objectifs de l\'Education Nationale",
".contexte d\'enseignement.objectifs de l\'Education Nationale.adéquation avec le programme",
".contexte d\'enseignement.objectifs de l\'Education Nationale.progression de la difficulté")

library(stringr)
w <- sapply(1:length(str), 
            function(x)any(str_detect(str[-x], str[x])))
str[-which(w)]
# [1] ".contexte d'enseignement.cohérence avec le niveau des élèves"                            
# [2] ".contexte d'enseignement.contraintes pratiques.contrainte de temps"                      
# [3] ".contexte d'enseignement.contraintes pratiques.contrainte matérielle"                    
# [4] ".contexte d'enseignement.contraintes pratiques.faisabilité par rapport à la classe"      
# [5] ".contexte d'enseignement.objectifs de l'Education Nationale.adéquation avec le programme"
# [6] ".contexte d'enseignement.objectifs de l'Education Nationale.progression de la difficulté"

暫無
暫無

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

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