R 将罗盘点转换为相应方向
我在R中创建了一个函数,将罗盘点转换为相应的风向。函数如下所示R 将罗盘点转换为相应方向,r,function,R,Function,我在R中创建了一个函数,将罗盘点转换为相应的风向。函数如下所示 windDirectionClassifier <- function(x) { if(x == 1) y <- "North" if(x == 2) y <- "North North East" if(x == 3) y <- "North East" if(x == 4) y <- "East North Ea
windDirectionClassifier <- function(x) {
if(x == 1) y <- "North"
if(x == 2) y <- "North North East"
if(x == 3) y <- "North East"
if(x == 4) y <- "East North East"
if(x == 5) y <- "East"
if(x == 6) y <- "East South East"
if(x == 7) y <- "South East"
if(x == 8) y <- "South South East"
if(x == 9) y <- "South"
if(x == 10) y <- "South South West"
if(x == 11) y <- "South West"
if(x == 12) y <- "West South West"
if(x == 13) y <- "West"
if(x == 14) y <- "West North West"
if(x == 15) y <- "North West"
if(x == 16) y <- "North North West"
return(y)
}
windDirectionClassifier非常感谢各位。根据“srishtigarg”的建议,我进行了检查,发现数据中存在错误的“0”值。谢谢。您必须定义一个y值,它可能是虚拟的,比如在这个if块的开始处y=0。如果您可以附加完整的代码段,这将有助于解决问题。谢谢函数可能收到的输入超出了为if条件定义的1-16范围,例如x=0
,这就是函数无法返回y的原因。正如@srishtigarg所建议的,您需要在if块的开头定义y=0
。另外,请提供函数的完整或简化版本以及预期的输入。防御性编程:在给定原始输入的情况下,将函数设计为做您想做的事情,然后在调用方提供其他内容时做什么。在这种情况下,我将使用y启动函数