Dear R helpers I have following data.frame and for each product_name, I have associated mean and standard deviation. I need to generate 1000 random no.s for each of these products and find the respective mean and standard deviation. My R code is as follows.
library(plyr) library(reshape2) filtered_new <- data.frame(product_name = c("P1", "P2", "P3", "P4", "P5"), output_avg = c(22.71078,22.16979,21.34420,20.17421,19.83799), output_stdev = c(23.59924,21.21430,22.01025,18.88877,18.80436)) n <- 100 myfunction_mc = function(product_name, output_avg, output_stdev) { product_usage_borrowing_room_mc = rnorm(n, output_avg, output_stdev) output_avg_mc = mean(product_usage_borrowing_room_mc) output_stdev_mc = sd(product_usage_borrowing_room_mc) return(output_avg_mc ) } result <- dlply(.data = filtered_new, .variables = "product_name", .fun = function(x) myfunction_mc(product_name = x$product_name, output_avg = x$output_avg, output_stdev = x$output_stdev)) result1 <- data.frame(result) result2 <- melt(result1) result <- data.frame(product = filtered_new$product_name, Monte_Carlo_result = result2$value) And it gives me the desired result. ######### PROBLEM is as given below - But if in the "myfunction_mc", in the return statement if I try to add 'output_stdev_mc' i.e. myfunction_mc = function(product_name, output_avg, output_stdev) { product_usage_borrowing_room_mc = rnorm(n, output_avg, output_stdev) output_avg_mc = mean(product_usage_borrowing_room_mc) output_stdev_mc = sd(product_usage_borrowing_room_mc) return(output_avg_mc, output_stdev_mc) # I have added output_stdev_m } result <- dlply(.data = filtered_new, .variables = "product_name", .fun = function(x) myfunction_mc(product_name = x$product_name, output_avg = x$output_avg, output_stdev = x$output_stdev)) I get following error - Error in return(output_avg_mc, output_stdev_mc) : multi-argument returns are not permitted Kindly guide. Regards Vincy [[alternative HTML version deleted]]
______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.