2017-08-15 5 views
-1

Ich habe die Namen einiger Musikkünstler, mit denen ich innerhalb der Spotify API arbeite. Ich habe einige Probleme mit einigen Saiten wegen der Akzente der Charaktere. Ich habe wenig Verständnis für die Zeichencodierung.Vereinfachen von Zeichen mit Verzierungen in R

Ich werde mehr Kontext weiter unten etwas bieten, aber ich frage mich, im Wesentlichen, wenn es eine Möglichkeit, in R zu „vereinfachen“ Zeichen mit Ornamenten ist.

Im Wesentlichen bin ich interessiert, wenn es eine Funktion gibt, die c("ë", "ö") als eine Eingabe nimmt, und c("e", "o") zurückgibt, die Verzierungen von den Zeichen entfernend.


Das glaube ich nicht, dass ich wegen der Probleme mit dem API-Authentifizierung ein reproduzierbares Beispiel erstellen können, aber aus irgendeinem Kontext, wenn ich zu laufen versuchen:

artistName <- "Tiësto" 
GET(paste0("https://api.spotify.com/v1/search?q=", 
      artistName, 
      "&type=artist"), 
    config(token = token)) 

folgenden Unterlagen an das gesendet wird API:

https://api.spotify.com/v1/search?q=Tiësto&type=artist 

Rückkehr mir einen 400 bad request Fehler. Ich versuche, die Zeichenfolgen zu ändern, die ich an die GET Funktion übergebe, damit ich etwas nützliche Ausgabe erhalten kann.

Antwort

0

Basierend auf den Antworten auf this question, können Sie dies tun:

artistName <- "Tiësto" 

removeOrnaments <- function(string) { 
    chartr(
    "ŠŽšžŸÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðñòóôõöùúûüýÿ", 
    "SZszYAAAAAACEEEEIIIIDNOOOOOUUUUYaaaaaaceeeeiiiidnooooouuuuyy", 
    string 
) 
} 

removeOrnaments(artistName) 

# [1] "Tiesto" 
2

Hier ist, was ich gefunden und kann für Sie arbeiten. Einfacher und bequemer für jede Art von Daten.

+0

Diese Lösung ist nett und praktisch, wenn sie auf dem OPs-System funktioniert, aber sie ist plattformabhängig, also funktioniert sie vielleicht nicht für alle (in meinem Mac führt dies zu "Ti \" esto "') –

+0

@OriolMirosa - Ich wusste nichts davon Vielen Dank für Ihren Kommentar. – Sagar