2017-01-12 2 views
1

Предположим, у меня есть этот вектор с именем:Печать названного вектора в R?

> foo = setNames(c("one", "two"), c(1, 2)) 
> foo 
    1  2 
"one" "two" 
> names(foo) 
[1] "1" "2" 
> foo 
    1  2 
"one" "two" 

Что это самый простой способ напечатать следующее:

1: one, 2: two 

Я просто хочу для отладки.

Может быть с кавычками или без них, я не придирчивый.

У меня есть, но это, кажется, очень разговорчив:

the_vec = c() 
for (idx in 1:length(foo)) { 
    the_vec = c(the_vec, paste(idx, ":", foo[idx], sep="")) 
} 
paste(the_vec, collapse=", ") 

выход:

[1] "1:one, 2:two" 
+0

'кот()' может дать вам выход, который отображает немного больше, чтобы ваш симпатия. – joran

+0

@ joel.wilson Ницца! Если вы ответите, я соглашусь. – dfrankow

ответ

4
paste(names(foo), foo, sep = ":", collapse = ",") 
+0

будет ли человек, который помог мне улучшить плохой ответ, который я написал? –