« [Python]パスセパレーターを得る | トップページ | [Python]行の継続 »

2022年10月15日 (土)

[R]バイト列を扱う

数値や文字などの情報を、8ビットずつ区切って表したものがバイト列。Rで扱うにはロウ型を使う。

> rw <- as.raw(c(1, 2, 0xa))
> print(rw)
[1] 01 02 0a
> as.integer(rw)
[1] 1 2 10
> as.integer(rw) + 20
[1] 21 22 30

文字列をロウ型に変換するにはcharToRaw関数を、ロウ型を文字列に変換するにはrawToChar関数を使う。

> rw <- charToRaw("ABC123")
> print(rw)
[1] 41 42 43 31 32 33
> as.raw(as.integer(rw) + 1)
[1] 42 43 44 32 33 34
> rawToChar(as.raw(as.integer(rw) + 1))
[1] "BCD234"

日本語も扱える。以下は、UTF-8の環境下で行った例。

> rw <- charToRaw("ABあいう12")
> print(rw)
[1] 41 42 e3 81 82 e3 81 84 e3 81 86 31 32
> print(rw[3:5])
[1] e3 81 82
> print(rawToChar(rw[3:5]))
[1] "あ"

« [Python]パスセパレーターを得る | トップページ | [Python]行の継続 »

R(文字と文字列)」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« [Python]パスセパレーターを得る | トップページ | [Python]行の継続 »

無料ブログはココログ

■■

■■■