子集数据帧中意外输出的原因 - R

2023-12-11

我有数据框“a”,它有一个名为“VAL”的变量。我想统计VAL值为23或24的元素。

我使用了两个工作正常的代码:

nrow(subset(a,VAL==23|VAL==24) 
nrow(subset(a,VAL %in% c(23,24)))

但是,我尝试了其他代码,这些代码给出了意外的输出,但我不知道为什么。

nrow(subset(a,VAL ==c(23,24)))

即使我改变 23 和 24 的顺序,它也会给出不同的意外输出。

nrow(subset(a,VAL ==c(24,23)))

为什么这些代码不正确?他们实际上在做什么?


通过一个例子可以看出哪里出了问题:

a <- data.frame(VAL=c(1,1,1,23,24))
a
#  VAL
#1   1
#2   1
#3   1
#4  23
#5  24

这些工作:

a$VAL %in% c(23,24)
#[1] FALSE FALSE FALSE  TRUE  TRUE
a$VAL==23 | a$VAL==24
#[1] FALSE FALSE FALSE  TRUE  TRUE

由于比较时向量回收,以下内容不起作用 - 请注意下面的警告消息,例如:

a$VAL ==c(23,24)
#[1] FALSE FALSE FALSE FALSE FALSE
#Warning message:
#In a$VAL == c(23, 24) :
#  longer object length is not a multiple of shorter object length

最后一段代码回收了您正在测试的内容并基本上进行了比较:

c( 1,  1,  1, 23, 24) #to
c(23, 24, 23, 24, 23)

...所以您不会返回任何行。改变顺序会给你

c( 1,  1,  1, 23, 24) #to
c(24, 23, 24, 23, 24)

...您将得到两行返回(这纯粹是运气,给出了预期的结果,但不适合使用)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

子集数据帧中意外输出的原因 - R 的相关文章

随机推荐

  • 跨类加载器投射?

    我怎样才能做到这一点 class Foo public static Foo get throws Exception ClassLoader cl new URLClassLoader new URL foo jar null Foo c
  • 读取特定文件夹下的所有txt文件,并将所有内容写入一个txt文件中

    我尝试阅读全部 txt文件夹中的文件并将每个文件中的所有内容写入另一个 txt 文件 但不知何故它只将一行写入txt 文件 我尝试过fwrite and file put contents 都不起作用 这是我的代码
  • 导入/导出 DataFusion 管道

    有谁知道是否可以以编程方式导入 导出 DataFlow 管道 已部署或处于草稿状态 我们的想法是编写一个脚本来删除并创建一个 DataFusion 实例 以避免在不使用时计费 通过 gloud 命令行 可以配置 DataFusion 集群并
  • 通过xml更改Android ActionBar中的标题文本颜色

    我想更改应用程序中 ActionBar 的标题文本颜色 我尝试了很多方法但我无法实现 我不想以编程方式执行此操作 因为当应用程序启动时 它会显示具有先前颜色的操作栏 然后更改为新颜色 我支持 Api Level 8 我的 xml 是用And
  • 重写对集合的访问以避免“双重”查找

    我有这样的代码 std unordered map
  • 粘贴的形状不被视为“最新”形状

    我正在从 Excel 电子表格自动生成 PowerPoint 报告 在粘贴表格之前 我已经完成了该过程 我使用以下方法将表格粘贴到 PowerPoint 中PPApp CommandBars ExecuteMso PasteSourceFo
  • Fresco图片加载回调

    我刚刚迁移到Fresco用于在我的应用程序中加载图像的库 我需要听图像加载事件 当然我在文档中阅读了这篇文章监听下载事件 这正是我所需要的 但是 有几件事是我不喜欢的 我的目标是隐藏View如果从网上下载失败 我无法参考SimpleDraw
  • 是否可以通过 .net 应用程序以编程方式关闭“远程 PC”? [复制]

    这个问题在这里已经有答案了 我想知道 是否可以通过 net 应用程序以编程方式关闭远程 PC 如果是的话 怎么可能呢 See 此知识库文章 例如 System Diagnostics Process proc new System Diag
  • Flask 网站 -- 500 内部服务器错误

    我一生都无法弄清楚为什么我试图启动的这个烧瓶应用程序不起作用 我在 5 美元的 Digital Ocean Droplet 上运行它 这是 希望 您需要了解的所有信息 目录布局 包含在 var www FlaskApp FlaskApp i
  • 在悬停事件上设置 CSS 渐变背景动画

    我有一些菜单项 它们在悬停时使用背景渐变进行样式设置 使用以下样式 sidebar ul li a hover background image linear gradient bottom rgb 68 68 68 5 rgb 51 51
  • 外线 Seaborn 小提琴图/箱线图

    I am using the violinplot function from the Seaborn library Sometimes the outer lines are visualized and sometimes they
  • 仅当请求来自另一个特定网站时才允许登录网站

    我有一个 PHP MySQL 网站 网站 1 它的登录系统只要求输入 PIN 码 只是一个长数字字符串 用户有两种方式使用此代码登录 转到网站 1 登录页面并在典型的登录表单中输入代码 单击网站 2 中的链接 该链接带有 PIN 码作为 G
  • 使用与 Google 表格中的前一个单元格相同的值填充空单元格(数组公式)

    我有一个可以在此示例中看到的数据列表 https docs google com spreadsheets d 1bRiupsmjfDRE9AgcM 5KJKAyxYKpQiMuyAGSoGaZYN0 edit usp sharing 范围
  • 加载共享库时出错:Java 中的 libjli.so

    我安装了 ElementaryOS 我正在终端中运行Processing IDE 方法是运行 processing in the processing 3 3 4目录 我收到此错误 java error while loading shar
  • Django Createview 外键字段的默认值

    我有两个相关的班级 表 学校和学生 外键 当我创建一个新学生时 我希望它自动填充学校字段 这是学校班级 表 中名称字段的外键 因为它已经链接到学校 我尝试过 def get initial self 但没有运气 它给了我错误 如果有人能指出
  • 如何使用 DOMDocument 方法更改节点的根?

    如何只更改 DOM 节点的根标签名称 在 DOM Document 模型中我们无法更改属性documentElement of a DOMElement对象 所以 我们需要 重建 节点 但是如何 重建 childNodes财产 注意 我可以
  • 使用python查找图像存在的docx文件

    我如何找到文档文件中存在的图像 python 中有没有相应的模块 我搜索过但没有用 这就是我们如何从word文件中读取内容 下面的代码没有提供有关文件中存在的图像的信息 from docx import Document documnet
  • 在 debian 中安装 Node js 时出错

    我尝试安装在debian nodejs 我正在按照以下步骤操作如何在 ubuntu 上安装 Node js但当我跑步时sudo bash nodesource setup sh下面的错误向我显示 有人帮我解决吗 W The reposito
  • React Native - 应用程序如何确定设备上未找到的打包器 IP 地址

    我有一个 React Native 应用程序 如果我在 iOS 模拟器上运行它 它可以工作并且可以连接到在 localhost 8081 上运行的正在运行的打包程序 但是如果我尝试在实际的 iOS 设备上运行该应用程序 它会失败 因为它无法
  • 子集数据帧中意外输出的原因 - R

    我有数据框 a 它有一个名为 VAL 的变量 我想统计VAL值为23或24的元素 我使用了两个工作正常的代码 nrow subset a VAL 23 VAL 24 nrow subset a VAL in c 23 24 但是 我尝试了其