R Unlist именованный список в одну строку с сохранением имен списков

#r #list

#r #Список

Вопрос:

Я хочу преобразовать одномерный именованный список в одну строку — строку. Имена должны быть сохранены и сохранены как пары ИМЯ = ЗНАЧЕНИЕ, разделенные точкой с запятой.

мой тестовый список

 nl = list(case1="master2", case2=5, case3="master", case4=345)
  

Я попробовал следующее

 sapply(names(nl),function(x) paste(x,paste(nl[[x]],collapse="=")))
          case1           case2           case3           case4 
"case1 master2"       "case2 5"  "case3 master"     "case4 345"
  

что мне нужно, так это

 "case1=master2;case2=5;case3=master;case4=345"
  

Ответ №1:

Вы можете использовать paste() для создания разделителя «=» и свертывания с помощью «;». names() позволяет получить доступ к именам в списке.

ОБНОВЛЕНО с учетом предложения @Dason.

 paste(names(nl),nl,sep="=",collapse=";" )

[1] "case1=master2;case2=5;case3=master;case4=345"
  

Комментарии:

1. Просто вставьте (имена (nl),nl, sep=»=»,collapse=»;» )

2. Отлично! Я знал, что есть простой способ достичь цели, спасибо!