r - R花括号语法
问题描述
它有效,但我想知道为什么 tis 是正确的
if (one_time_cost_year_zero != 0) { EIW_TPI_flag = 1
} else {EIW_TPI_flag = 0}
虽然这会导致错误
if (one_time_cost_year_zero != 0) { EIW_TPI_flag = 1 }
else {EIW_TPI_flag = 0}
这背后的逻辑是什么?
解决方案
因为 R 不知道您的 if -else 语句尚未完成(因为只有该if ()
行也是有效的 R ...)比较
1 + 2
+ 3
对比
1 + 2 +
3
在 R 中,如果我们想将一个命令拆分为多行,我们需要打开一个括号(如在 if -else 示例中)或在行尾有一个“悬挂”运算符(还有“多行”字符串,但它们本身并不是真正的命令)....然后,您看到的错误是由于我们无法以命令else
开头(例如我们无法以 开头命令in
等|
)
因此,我们也可以这样写:
if (one_time_cost_year_zero != 0) { EIW_TPI_flag = 1 } else
{EIW_TPI_flag = 0}
推荐阅读
- git - 如何说服 Xcode 11.5 在 Project Navigator 中显示我的 README.md?
- java - Bazel 挂在 java 二进制文件上
- excel - vbscript 为特定用户名以读/写模式打开共享文件并保持其他用户具有打开只读模式的权限
- rust - 如何通过具有不同类型的 trait 方法获取结构值?
- python - 在 Python 中使用 * 删除特定扩展名的文件
- javascript - 如何从 JavaScript 中的新日期中减去或添加 GMT 数字?
- docker - 如何将文件从 git 复制到詹金斯的远程 docker 容器?
- r - 如何在R中的circlize chordDiagram上更改标签字体大小
- python - 如何使用 seaborn 制作相关热图但按特定列过滤?
- ios - 如何检查 iPad 是否有 iPadOS