如何将 R 中的十六进制数分成相等的部分并交换它们?

How do you split a hexadecimal number in R to equal parts and swap them?

我正在从该设备获取十六进制格式的数据。我们以

为例
value = CB0F0B00CB0F0C00CB0F0F00... #(it keeps going)

我打算做的是取前 4 个数字 (CB0F) 然后保留接下来的 4 个数字 (0B00 - 我想稍后使用它们) 然后取下 4 个number (CB0F) 并且它一直在继续。所以基本上我想创建一个数据框,每 4 个数字在 4 个数字之后。 我如何在 R 中执行此操作? 在我得到 CB0F 之后,我也需要将它们交换为 0FCB

我认为你是这个意思,

value <- "CB0F0B00CB0F0C00CB0F0F00"
x <- gsub("(.{2})(.{2})", "\2\1", value)
substring(x, seq(1,nchar(x),4), seq(4,nchar(x),4))
# [1] "0FCB" "000B" "0FCB" "000C" "0FCB" "000F"\

I was able to get [1] 4043 11 4043 12 4043 15 as output. Now I want to save it as a data frame. 4043, 4043, 4043 as one column and 11, 12, 15 as one column. How do i do that?

x <- c(4043 ,11, 4043 ,12, 4043 ,15)
data.frame(num1=x[seq(1, length(x), 2)], num2=x[seq(2, length(x), 2)])
#   num1 num2
# 1 4043   11
# 2 4043   12
# 3 4043   15