ritorna il carattere associato al codice Asci specificato in R

buon pomeriggio,

sto cercando di creare un prodotto cartesiano in R con le lettere dell'alfabeto.

quello che sto cercando è questo:

prima creo una matrice con le lettere

a <- as.matrix(seq(97,122,by=1))

poi creo un frame di dati con 2 colonne con tutte le combinazioni

b <- expand.grid(a, a)

infine combino le 2 colonne

apply(b,1,paste,collapse=" ")

il problema che ho è che non riesco a trovare un modo per trasformare quei "decimali" al suo carattere Asci.

ho provato diverse cose come rawToChar e gsub senza successo.

qualcuno può indicarmi la giusta direzione?

grazie grazie grazie grazie grazie


En title : Return the character associated with the specified Ascii code in R

12 Comments:

  1. per stampare un carattere ASCII in R è possibile utilizzare la funzione print con un backslash \ prima di un numero di codice ASCII. per esempio per stampare il carattere equivalente a 150 usare print("\150").

    o per il tuo esempio sopra puoi provare:

    a <- sapply(97:122,function(x) rawToChar(as.raw(x)))
    
    b <- expand.grid(a,a)
    
    c <- t(apply(b,1,function(x) paste(x[1],x[2])))
    
    1. grazie Gary. no, quello di cui ho bisogno è di "Sostituire" i valori numerici in un frame di dati alle loro lettere corrispondenti, per usarli all'interno del codice. grazie ancora.
    1. sono d'accordo con @Arun è probabilmente più facile da usare solo letters, ma aggiornerò il mio esempio con quello che hai detto.
    1. grazie Gary. l'ho provato, ma non fa quello di cui ho bisogno. restituisce 2 variabili ma non il prodotto cartesiano di esse.
  2. primo metodo diretto:

    res <- do.call(paste, expand.grid(letters, letters))
    

    se hai altri valori ascii e vuoi ottenere caratteri equivalenti:

    val <- 65:96 # whatever values you want the equivalent characters for
    mode(val) <- "raw" # set mode to raw
    # alternatively, val <- as.raw(65:96)
    a   <- sapply(val, rawToChar)
    res <- do.call(paste, expand.grid(a, a))
    
  3. un modo molto semplice per restituire un carattere basato sul suo codice ASCII è la funzione intToUtf8. funziona anche per vettori che includono interi multipli e restituisce i caratteri corrispondenti come una stringa.

    vec <- 97:122
    intToUtf8(vec)
    # [1] "abcdefghijklmnopqrstuvwxyz"
    
    intToUtf8(65)
    # [1] "A"
    

More similar articles:

  • la conversione di numero ASCII al suo codice di carattere ASCII - C (Non stampare!)
  • come convertire il codice ASCII (0-255) in una stringa del carattere associato?
  • come arrivare al codice ascii di un carattere in una stringa MASM Assembly
  • usando c ++ è possibile convertire un carattere Asci in Hex?
  • matrice di carbone a numerico in R
  • come digitare i caratteri Asci con più di 3 numeri?
  • che cos'è questo codice di caratteri ASCII?
  • come ottenere il codice Asci in javascript da hardware esterno?
  • estrarre una sequenza di bit da un carattere
  • come tagliare il character DEL (codice ASCII 127) in PHP
  • omissione del carattere certo dall'uscita in un programma casuale del generatore di parola d'ordine
  • come ottengo un codice ASCII da una stringa in JavaScript?
  • carattere Occurrence
  • stampare un numero a due cifre come carattere
  • che cosa è questo carattere:? dove posso vedere i caratteri simili?
  • programmazione MIPS: memorizzazione e integrazione e stampa del suo carattere ASCII
  • come convertire String (di lunghezza 1) al valore int associato di codice ASCII (0-255)?
  • i miei siti web mostrano un carattere strano dopo il caricamento
  • valore variabile di carattere C ++ di '\ x1'
  • come trovare e sostituire il carattere in textview in android?
  • ritorna l'ArrayList aggiornato <characters>dopo aver rimosso l'elemento specificato all'indice</characters>
  • perché il carattere ascii viene stampato due volte con putchar?
  • confrontare il codice Asci
  • rimozione di qualsiasi carattere non specificato da un foglio di calcolo di Excel utilizzando una macro
  • cosa sarà EOF qui nel codice qui sotto?
  • quando si confrontano i valori delle parole in pitone, perché "Nick" sarebbe maggiore di "George"?
  • chi insegna la CPU 'A.. B.. C'?
  • convertire interi in ASCII risulta in testo beeping e illeggibile?
  • confronta caratteri tra stringhe e posizione della tabella ASCII
  • espressione regolare per limitare i caratteri ascii