boolean - 当布尔运算符总是排除单个值,而根据逻辑应该包含它时,如何解决它?
问题描述
我有一个希望很容易解决的问题,但我一直没能解决。
如果有 12 个数字的范围,从 1 到 12(代表月份),那么我想要做的是将某个连续数字(月份)系列更改为“PeriodA”或“PeriodB”。我打算通过使用布尔运算符来做到这一点。
所以我创建的是:
# For example period A is from May until August and period B is from October untill april
PeriodAstart <- 5 # Or any other numbers
PeriodAend <- 8
PeriodBstart <- 10
PeriodBend <- 4
#data$season contains the numbers 1-12
data$season[(data$season >= PeriodAstart)
& (data$season <= PeriodAend )] <- "PeriodA"
data$season[(data$season >= PeriodBstart)
& (data$season <= PeriodBend )] <- "PeriodB"
除了值 1 之外,该脚本似乎可以工作。例如,当从 10(10 月)到 4(4 月)的 periodB 游侠时,总是会发生这种情况。我不明白为什么,或者如何解决它。
输出示例:
table(data$season)
1 9 PeriodA PeriodB
461 2430 11573 5825
我知道它很容易手动解决,但我将使用它为多个数据文件创建一个自动化过程,因此我需要一个在布尔运算符中的解决方案。
感谢您的阅读和帮助:)
解决方案
推荐阅读
- javascript - 将 angular {{name}} 与 json 数组中的名称匹配,并从 Json 数组中获取该名称的对应数据
- python - 调用类时 Python 打印 !!python/object
- python - 不支持 python selenium edge webdriver 版本
- bash - 当给定工作日数作为输入时,计算两个日期之间的“实际”天数
- ffmpeg - 用于合并多个视频和背景图像的 FFMPEG 脚本
- actionscript-3 - 如何将信息添加到我的 xml - AS3 - AIR
- jquery - 找到“最接近”的元素
- dockerfile - 是否必须在 Dockerfile 中使用 EXPOSE 命令来公开端口
- python - 同时从 OpenCV 流式传输多个图像
- kubernetes - minikube 内部服务之间请求的非均匀分布