r - na.omit 似乎正在删除我的数据框中的负值?
问题描述
我试图在我的数据框中找出特定位置(CB、HK 等)的不同温度范围,它看起来像这样:
'头(加入)'
OTU_num location date otus Depth DO Temperature pH Secchi.Depth
1 Otu0001 CB 03JUN09 21 0.0 7.60 21.0 3.68 NA
2 Otu0001 CB 03JUN09 21 0.5 8.27 16.4 3.68 NA
3 Otu0001 CB 03JUN09 21 1.0 7.65 14.9 3.68 NA
4 Otu0001 CB 03JUN09 21 1.5 5.26 12.2 3.25 NA
5 Otu0001 CB 03JUN09 21 2.0 4.01 10.1 3.25 NA
我正在使用以下方法计算范围:
ranges <- join %>%
group_by(location) %>%
na.omit %>%
mutate(min=min(Temperature), max=max(Temperature), subtract=min-max) %>%
arrange(subtract)
一些温度值是“NA”,所以我使用了 na.omit,但它似乎正在取出负值?所以我得到的范围是错误的。
location min max subtract
MA 0.1 27.3 -27.2
我使用 range 函数对其中一个位置进行了仔细检查(有很多,我不想为每个位置使用 range)
MA <- subset(join, location=="MA")
range(MA$Temperature, na.rm = TRUE)
[1] -2.2 27.6
为什么价值观不同?任何帮助表示赞赏!
解决方案
我认为您应该使用join %>% filter(!is.na(Temperature))
,因此只会删除具有 NA 温度的行。
推荐阅读
- google-cloud-platform - 仅在不设置“console.cloud.google.com”引用者的情况下为 gcs 使用经过身份验证的 url
- c# - Serilog 日志记录到elasticsearch,延迟时间长,是一种可用于更快记录日志的配置
- python - FileNotFoundError: [WinError 2] 系统找不到指定的文件:'frame_00_delay-0.04s.png' -> '0.png'
- ruby-on-rails - 当其中一个类中有额外的操作时,如何在不同的类中重复使用相同的方法?
- c# - ASP.NET Core 3.1 改变视图而不是重定向
- javascript - Chart.js:一个值为空,但不能断行
- elasticsearch - 如何通过 Kibana 中的摄取管道将字段拆分为单词
- swift - 带有 UiTextField 的 RxSwift
- codeigniter - 如何使用 codeigniter3 阻止用户的多个登录请求?
- python - Python 中的 OprnGl,3d 中移动相机