r - R将NA值转换为字符以进行字符串比较
问题描述
我有一个包含 2 列字符串的数据框。目标是查看其中有多少是相同的,包括NA
值。如果两列都给出NA
,则应将其视为相同。
class(df$column_1) # it shows characters
length(which(df$column_1 == df$column_2)) # the result exclude the NA rows
解决方案
另一种方法是逐项使用identical()
(它有一个很好的属性identical(NA, NA) = TRUE
)循环:
虚拟数据:
a=c("a",NA,"b")
b=c(NA,NA,"d")
df = data.frame(a, b, stringsAsFactors=FALSE)
代码:
count = 0
for(i in 1:nrow(df)){
count = count + identical(df[i,1],df[i,2])}
输出:
>count
>1
推荐阅读
- iot - 是否有 Vorto Eclipse 模型导入器 API
- python - 在 VSCode 中调试 python 模块的问题
- jsf - h:commandButton 点击其他按钮时的点击触发
- django - 如何将多个散景图像下载为单个报告
- python - 反转百分比刻度
- spring-boot - 如何在 Spring Webflux 中读取存储在类路径资源中的 JSON 文件?
- amazon-web-services - 如何为 Alexa 测验技能添加时间延迟
- javascript - vue js如何防止点击已经有点击事件的元素
- dask - Dask 调度程序限制 (fps)
- kotlin - AWS:将消息移动到死信队列,同时保留元信息