En R, s'il y a du japonais dans le script, cela cause parfois des inconvénients, nous le traitons donc de la manière suivante.
# R
intToUtf8(c(12371, 12435, 12395, 12385, 12399))
## [1] "Bonjour"
À quel numéro correspond le caractère souhaité
# R
utf8ToInt("Bonjour")
[1] 12371 12435 12395 12385 12399
Je l'ai vérifié une fois et essayé de l'écrire dans le script sans utiliser le japonais.
Vous pouvez également le rechercher en Python.
# python3
[ord(s) for s in "Bonjour"]
## [12371, 12435, 12395, 12385, 12399]
Pour la série python2, u "" est requis.
# python2
[ord(s) for s in u"Bonjour"]
## [12371, 12435, 12395, 12385, 12399]
Il semble que vous puissiez également spécifier un code uniforme dans R.
"\u3053\u3093\u306b\u3061\u306f"
## [1] "Bonjour"
Le code est-il spécifié en hexadécimal? Il existe de nombreuses façons d'obtenir le code hexadécimal.
En R, ça ressemble à ça.
# R
sprintf("%x", utf8ToInt("Bonjour"))
[1] "3053" "3093" "306b" "3061" "306f"
Vous pouvez utiliser hex en Python.
# python3
[hex(ord(s)) for s in "Bonjour"]
['0x3053', '0x3093', '0x306b', '0x3061', '0x306f']
En passant, lors de l'incorporation dans le package R, si vous utilisez une chaîne de caractères au format "\ u ..." dans la définition de fonction, l'avertissement suivant semble apparaître.
plotat.Rd: non-ASCII input and no declared encoding
Il semble qu'il n'est pas recommandé d'utiliser des caractères pleine largeur dans l'aide R.
Recommended Posts