r-一行中包含所有信息的数据帧.怎么能把它们弄洒



我有一个数据帧,其中所有信息都在一行中。参见下方的图片

无序数据

我需要把它改成这样整理数据

因此,行中的第一个值(suffix_name(应更改为变量,第二个值(none(应为新变量(suffix _name(的第一个数值请查看图像

使用以下代码可以拆分行的信息。您需要使用库data.table来对变量或值列进行子集设置。

library(data.table)
data_raw.dt <- data.table(
V2_00011 = "'SUFFIX_NAME'",
V2_00012 = 'NONE}}',
V2_00013 = "'PATIENT_ID'",
V2_00014 = "'CZMIl1844982497'",
V2_00015 = "'BIRTH_DATE'",
V2_00016 = "'1987-01-01'",
V2_00017 = "'GENDER'",
V2_00018 = "'Unknown'",
V2_00019 = "'OBSCURITY_LEVEL'",
V2_00020 = "'Normal'")
vars <- seq(1, ncol(data_raw.dt), by = 2)
vals <- seq(2, ncol(data_raw.dt), by = 2)
data_ref.dt <- data.table(matrix(data_raw.dt[, ..vals], ncol = length(vals)))
names(data_ref.dt) <- paste(data_raw.dt[, ..vars])

在这里你可以看到结果。

print(data_raw.dt)
V2_00011 V2_00012     V2_00013          V2_00014     V2_00015     V2_00016 V2_00017  V2_00018          V2_00019 V2_00020
'SUFFIX_NAME'   NONE}} 'PATIENT_ID' 'CZMIl1844982497' 'BIRTH_DATE' '1987-01-01' 'GENDER' 'Unknown' 'OBSCURITY_LEVEL' 'Normal'
print(data_ref.dt)
'SUFFIX_NAME'      'PATIENT_ID' 'BIRTH_DATE'  'GENDER' 'OBSCURITY_LEVEL'
NONE}} 'CZMIl1844982497' '1987-01-01' 'Unknown'          'Normal'

相关内容

最新更新