2016-05-30 2 views
0

В рамках моей работы я пишу довольно сложную часть кода. Это была боль в течение довольно долгого времени, и я начинаю делать бесполезные ошибки. Поэтому я попытался упростить мою проблему до невероятно простой части кода и все еще получил ошибки. Может ли кто-нибудь объяснить, что такое ошибка и как ее исправить? Спасибо!Проблема с функциями/петлями

(кадр данных 'мои файлы' находится в нижней части)

library(plyr) 
setwd("J:/R/Loops") 

funct <- function(x,v) 
    (x^2) + (v^2) 

myfiles <- read.csv("myfiles.csv", header=TRUE) 
funct(myfiles) 

Ошибка в функц (MyFiles): аргумент "v" отсутствует, не по умолчанию

lapply(myfiles, funct) 

Ошибка в FUN (X [[i]], ...): отсутствует аргумент «v», без значения по умолчанию

данных

myfiles <- read.table(header = TRUE, text = "x v 
1 7 
2 8 
3 9 
4 10 
5 11 
6 12") 
+0

'функц (MYFILES $ х, MYFILES $ v)'? – Roland

+1

или 'do.call (funct, myfiles)' – rawr

+0

или 'with (myfileds, funct (x, v))'? Неясно, каков ваш ожидаемый результат. Какие два аргумента вы пытаетесь передать своей функции? – MrFlick

ответ

1

Вы можете использовать ?mapply

mapply(funct,myfiles$x, myfiles$v) 
[1] 50 68 90 116 146 180 
+0

Это было прекрасно, спасибо! – Visser

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