Я использую R, чтобы прочитать некоторый XML и преобразовать его в что-то, с чем может работать библиотека deSolve
. Я пытаюсь преобразовать эту матрицу:R создать вектор из определенных элементов матрицы
svars = xpathSApply(doc, "/models/model[@name='SIS']/state_variables/variable")
svars = sapply(svars, xmlAttrs)
svars
[,1] [,2]
id "S" "I"
name "susceptible" "infected"
value "99" "1"
Чтобы вектор, который выглядит следующим образом:
svars = c(S = 99, I = 1)
Я немного в недоумении о том, как это сделать, может кто-нибудь помочь?
+1. Также 'setNames (as.numeric (svars [" value ",]), svars [" id ",])' works;) –
@Jilber! Я не решаюсь поставить это, но, наконец, я отредактировал свой ответ. – agstudy
@agstudy Ваш код сделал трюк, мой код немного отличается: 'state = as.vector (t (svars [значение,]))' 'if (forceNumeric) {' 'state = as.numeric (state) ' '} ' ' names (state) = svars [name,] ' – Blight