r - 过滤 R 数据框后,所有行都更改为 NA
问题描述
我有一个由五列组成的大型数据框。
当我尝试过滤其中一列时,另一列中的每一行都更改为 NA。我过滤的列是 VehicleEvent,Location 是接收 NA 替换的列。
str(datain)
'data.frame': 7551105 obs. of 19 variables:
$ DiagnosticIDs : chr "2,0,3,1,774,775,810,744,951,947" "2,0,3,1,774,775,7,718,720,951,837,810,744,947" "2,0,3,1,774,775,7,810,744,951,947" NA ...
$ DiagnosticValues: chr "28.211,48284.435,31647,7650.75,0,0,0,1,1,-73" "28.272,48290.34,31650,7651.2,0,0,550,0,0,54,0,0,1,-81" "28.272,48290.34,31650,7651.2,0,0,550,0,1,1,-81" NA ...
$ DriverName : chr "" "" "" NA ...
$ IgnitionOn : chr "true" "true" "true" NA ...
$ Latitude : num 51.5 51.5 51.5 51.5 51.5 ...
$ Longitude : num -0.462 -0.462 -0.463 -0.463 -0.463 ...
$ Location : chr "" "Parking area" "Dispatch" NA ...
$ Time : num 1.52e+09 1.52e+09 1.52e+09 1.52e+09 1.52e+09 ...
some columns not of interest omitted
$ AlertId : chr NA NA NA "6fbc400e-1ae5-11e8-9eee-7845c4f0a3d7" ...
$ AlertType : chr NA NA NA "Exited" ...
$ VehicleEvent : chr NA NA NA "fabb4fcb-c254-4a13-8f9c-a3307a4ba63b" ...
$ MessageType : chr NA NA NA "InsightAlertMessage" ...
str(datadf)
'data.frame': 104136 obs. of 6 variables:
$ Location : chr NA NA NA NA ...
$ Longitude : num -0.483 -0.462 -0.466 -0.464 -0.464 ...
$ Latitude : num 51.5 51.5 51.5 51.5 51.5 ...
$ AlertId : chr "ae22e47c-47c4-11e8-9513-7845c4f0a3d7" "3e13ccbc-47c6-11e8-a72e-7845c4f0a3d7" "5428da40-47c8-11e8-b59f-7845c4f0a3d7" "2fcd3fa8-47df-11e8-85a9-7845c4f0a3d7" ...
$ AlertType : chr "Exited" "Exited" "Exited" "Exited" ...
$ VehicleEvent: chr "792d6964-6ba1-4f98-9b63-5c9e194fff6d" "792d6964-6ba1-4f98-9b63-5c9e194fff6d" "792d6964-6ba1-4f98-9b63-5c9e194fff6d" "792d6964-6ba1-4f98-9b63-5c9e194fff6d" ...
数据中没有非 ACSII 字符(如果这意味着什么,它们都是从 XML 中提取的)。所有逗号、尾随空格、句号(句点)和斜杠都已从 Location 中删除,以防它们造成这种情况。
列已被重命名(以防万一使用相同的名称发生其他事情)。
我已经尝试了几乎所有我能想到的东西,包括......
datadf <- datain %>%
filter(AlertType == "Exited" &
VehicleEvent == "792d6964-6ba1-4f98-9b63-5c9e194fff6d") %>%
select(Location, Latitude, Longitude)
datadf <- datain[datain$VehicleEvent == "792d6964-6ba1-4f98-9b63-5c9e194fff6d",]
最后一个将所有列更改为“NA”。
VehicleEvent中的数据是不是很奇怪,无法处理……肯定不是。我的想法已经用完了,因此我向更广泛的社区提出了要求。
解决方案
推荐阅读
- perl - 在 Perl 中丢弃本地时间的一秒
- git - 忘了做 git flow 功能启动;现在怎么办?
- r - 如何在 ggplot 中的 aes() 和本地 geom_xxx() 中手动设置颜色*有条件地*?
- c# - HttpModule 可以引发事件吗?
- azure-devops - 获取构建开始时间、结束时间、结果、项目名称等?
- javascript - 如何在 Angular 8 中使用 Ember-Data 风格的 API?
- javascript - 从代码添加图像时,Dropzone 不添加图像预览
- c - 此代码使用 Arduino Uno 生成正弦波是否有效/合理?
- java - JobQueue 最多有 1 个 Job 或“如何使用最新数据重试”
- html - 强制具有内联 css 的容器获取孩子的高度