为什么R一直说它找不到我的功能?

问题描述 投票:0回答:2

我只是在学习R,问题是要创建一个能计算收入税额的函数。前5万税率为10%,其余税率为20%。这是我创建的函数,但无论何时我尝试调用它我都会收到错误:'找不到函数“tax_calc”'。

    tax_calc<- function(income){
       if (income <= 50000){
          return (income*(0.10))
       } else {
          return ((50000*.1)+((income - 50000)*.2)
       }
    }

我不明白我做错了什么。谢谢你的帮助。

r
2个回答
0
投票

因为该功能无效。你有没有尝试创造它?

>    tax_calc<- function(income){
+        if (income <= 50000){
+           return (income*(0.10))
+        } else {
+           return ((50000*.1)+((income - 50000)*.2)
+        }
Error: unexpected '}' in:
"          return ((50000*.1)+((income - 50000)*.2)
       }"
>     }
Error: unexpected '}' in "    }"
> 

它应该是:

tax_calc<- function(income){
    if (income <= 50000){
       return (income*(0.10))
    } else {
      return ((50000*.1)+(income - 50000)*.2)
   }
}

现在:

tax_calc(100000)
#[1] 15000

0
投票

你在第5行末尾用括号括起来。尝试运行此功能:

tax_calc<- function(income){
   if (income <= 50000){
      return (income*(0.10))
   } else {
      return ((50000*.1)+((income - 50000)*.2)) # Here I added the parenthesis
   }
}

请记住,要调用函数,您可以运行代码行或在另一个脚本中使用函数。对于后者,您可以将tax_calc函数保存在脚本中,例如“TaxCalc_Script.R”或其他任何内容。然后,当您需要使用该功能时,您可以使用以下内容:

source("TaxCalc_Script.R") # if the R script is in your working directory 
# or
source("C:/User.../WorkingDirectory/TaxCalc_Script.R") ## if the script is in a different folder

在后一种方式中,您可以在一个脚本中保存多个函数。当您使用source()时,脚本中的所有函数都将被调用到您的环境中。

© www.soinside.com 2019 - 2024. All rights reserved.