Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 需要帮助在ddply中输出我自己的函数结果吗_R - Fatal编程技术网

R 需要帮助在ddply中输出我自己的函数结果吗

R 需要帮助在ddply中输出我自己的函数结果吗,r,R,在ddply中应用自己的函数时,正确输出结果有问题 基本上,我编写了一个函数,它将输出两个变量:aggressive\u name,aggressive\u node。但是当我在ddply中运行这个函数时,函数值不会输出 option_1_aggressive <- function(first_date,Market) { if (Market =="Automotive" && first_date < yearqtr(2017 + 0)) { aggressi

在ddply中应用自己的函数时,正确输出结果有问题

基本上,我编写了一个函数,它将输出两个变量:aggressive\u name,aggressive\u node。但是当我在ddply中运行这个函数时,函数值不会输出

option_1_aggressive <- function(first_date,Market) {

if (Market =="Automotive" && first_date < yearqtr(2017 + 0)) { aggressive_name = "PC2E"                                                                       aggressive_node="19nm"}

else if (Market =="Automotive" && first_date >= yearqtr(2017 + 0)) {aggressive_name = "Osprey_BiCS_Auto"                                                                       aggressive_node="BiCS2"}

else if (Market !="Automotive" && first_date < yearqtr(2014 + 0.25)) { aggressive_name = "PC2E"                                                                          aggressive_node="19nm"}

else if (Market !="Automotive" && yearqtr(2014 + 0.25) <= first_date && first_date<= yearqtr(2014 + 0.75)) { aggressive_name = "Whale"                                                                                                                aggressive_node="1Ynm"}

else if (Market !="Automotive" && yearqtr(2015 + 0) <= first_date && first_date<= yearqtr(2015 + 0.25) ) {aggressive_name = "Robin/Seagull"                                                                    aggressive_node="1Ynm"}

else if (Market !="Automotive" && yearqtr(2015 + 0.5) <= first_date && first_date <= yearqtr(2016 + 0.5) ) {aggressive_name = "Z-hawk"                                                                                                               aggressive_node="1Znm" }

else if (Market !="Automotive" && yearqtr(2016 + 0.75) <= first_date && first_date<= yearqtr(2017 + 0.75) ) {aggressive_name = "Osprey_BiCS_Mobile"                                                                                                                aggressive_node="BiCS2"}

else if (Market !="Automotive" && yearqtr(2018 + 0) <= first_date ) {aggressive_name = "PCIe"                                                                        aggressive_node="BiCS3"}

result <-list(aggressive_name , aggressive_node) 

}

option_1_aggressive <- ddply(combine, .(Market, Customer, Product_Line, Platform_Name, Die_Name, Controller, Capacity, first_date), summarise, option_1_aggressive(first_date,Market))

您有责任提供适合测试的数据集。在我看来,这也会引发语法错误。这意味着你可能也在推卸责任,不提供你在控制台上看到的行为的全部细节。我认为@BondedDust你没有给出一个合适的例子。除此之外,您的代码还存在许多问题,这些问题表明您对如何使用和应用此函数存在严重误解。在做更复杂的事情之前,试着理解plyr和?base::Logic的基础知识。