2016-01-27 3 views
-1

Я пытаюсь назначить функцию каждой строке вектора. Однако это не работает должным образом. Я пробовал много вещей, используя синтаксический анализ, eval и т. Д., Но я не нашел своей ошибки. Думаю, для вас это не должно быть слишком сложно. Вот кодНазначение функции элементу вектора R

quartale <- c("2014", "2015") 
test <- c("arnaud", "elio", "pascal", "david", "senior") 

for(i in 1:5){ 
    assign(paste("meldungen.", quartale[1], "[",i, "]", sep=""),nchar(test[i]))         
} 

Таким образом, я хотел бы, наконец, есть вектор

meldungen.arnaud = 6,4,6,5,6 
+0

Возможно, вам нужно 'ncha r (test [i]) ' – akrun

+0

Вы никогда не закрываете круглые скобки, связанные с' for'. – fdetsch

+0

Да, извините, ребята, вы правы, я исправил опечатки. Однако это функция назначения, которая не работает с [i] –

ответ

1

Попробуйте это:

nam <- paste("meldungen.", quartale[1], sep="") 
assign(nam, nchar(test)) 

> meldungen.2014 
[1] 6 4 6 5 6 

Не совсем уверен, что вы ищете, но есть некоторые советы :

Этот код:

for (i in 1:5){ assign((paste0("meldungen.", test[i])), nchar(test[i]))} 

дает

> meldungen.arnaud 
[1] 6 

соответственно

> meldungen.elio 
[1] 4 

Этому код дает вам то, что вы описали в своем сообщении:

> assign((paste0("meldungen.", test[1])), nchar(test)) 
> meldungen.arnaud 
[1] 6 4 6 5 6 

Надеются, что это помогает

Смежные вопросы