使用带有 $ 的逻辑向量对数据帧进行子集化

2024-01-05

我无法理解使用原因 and behavior of the $子集 a 中的符号data.frame下面的例子是在我正在参加的初学者课程中提出的(不是现场教授,所以不能在那里询问):

temp_mat <- matrix(1:9, nrow=3)
colnames(temp_mat) <- c('a', 'b', 'c')
temp_df <- data.frame(temp_mat)

Calling temp_df显然输出:

  a b c
1 1 4 7
2 2 5 8
3 3 6 9

课程中给出的例子是:

temp_df[temp_df$c < 10]

哪个输出:

  a b c
1 1 4 7
2 2 5 8
3 3 6 9

使用原因问题:课程表明$用于部分匹配,并且x$y是一个完全替代x[["y", exact=FALSE]]。为什么我们要在这里使用部分匹配运算符?我们使用它是因为我们确信在我们的temp_df没有其他类似于“c”的列可能会被误选吗?此外,如何衡量部分匹配?至少有 % 的字符匹配之类的?看来有一个getElement如果使用具有未知或相似列名称的数据集(例如家庭电话与手机,这些会被视为有效的部分匹配吗?)

行为问题:看来上面的例子temp_df[temp_df$c < 10]意思是“返回 temp_df 中 c 列小于 10 的元素子集”,并且由于所有 c 列元素都满足条件,因此返回整个数据帧。我的解释显然是错误的,因为temp_df[temp_df$c < 9]返回:

  a b
1 1 4
2 2 5
3 3 6

虽然c列中的第1行和第2行元素确实满足小于9的标准,但整列被省略。然后我的问题变成双重的:那个逻辑向量实际上在说什么/在做什么?我将如何编写对“从 temp_df 返回元素子集(其中列 c 小于 9)”的解释并让它返回:

  a b c
1 1 4 7
2 2 5 8

因为在我看来,元素 1 和 2(第 1 行和第 2 行)满足该标准,因为它们的列 c 值小于 9,因此应该返回。


尝试分步骤分解操作。

temp_df$c < 9

给出一个向量如下:

[1]  TRUE  TRUE FALSE

当您按照所示方式传递该向量时:temp_df[c(TRUE, TRUE, FALSE)]具有对列进行操作的效果。

想想一个data.frame作为列表,以列名作为键,以列内容作为向量值。该操作保留 TRUE 键(即列)并删除 FALSE。

逗号用于将向量标记为行索引。保留前两行并删除最后一行。因此,temp_df[c(TRUE, TRUE, FALSE), ] gives:

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

使用带有 $ 的逻辑向量对数据帧进行子集化 的相关文章

  • R 更改小数位且不四舍五入

    gt signif 1 89 digits 2 1 1 9 我想要1 8 这有点笨拙 但它会起作用并保持所有数字 x lt 1 829380 trunc dec lt function x n floor x 10 n 10 n Resul
  • 仅保留百分比的尾随零

    给出以下示例 library pander tableAbs lt Titanic 1 1 tablePct lt round prop table tableAbs 100 2 table lt cbind tableAbs tableP
  • R:表格格式

    我有一个包含以下列的 Excel 文件 Column1 Column2 Column3 ab bb 0 5 ab bc 0 1 ab cd 0 7 ab dd 0 8 ac bb 0 2 ac bg 0 8 ac ee 0 8 ac dd
  • r 中的 5 维图

    我正在尝试在 R 中绘制 5 维图 我目前正在使用rgl包以 4 个维度绘制数据 使用 3 个变量作为 x y z 坐标 另一个变量作为颜色 我想知道是否可以使用这个包添加第五个变量 例如空间中点的大小或形状 这是我的数据和当前代码的示例
  • 带 R 的多彩标题

    我想添加颜色某些词在我的图表标题中 我已经能够在这里找到一些先例 http blog revolutionanalytics com 2009 01 multicolor text in r html 具体来说 我希望用撇号括起来的文本 在
  • 表单提交时出现 rvest 错误

    我想从以下网页中抓取数据 https swgoh gg u zozo collection 180 emperor palpatine https swgoh gg u zozo collection 180 emperor palpati
  • 如何计算嵌套函数中的粘合表达式?

    我正在尝试嵌套一个函数 该函数将两个字符串粘合在一起 该函数使用组合字符串来命名数据帧的列 然而 问题似乎是粘合表达式没有足够早地评估为字符串 我可以 并且应该 强制在将表达式作为参数传递给另一个函数之前对其进行求值吗 library ti
  • 为什么 geom_boxplot 比基本箱线图识别更多异常值?

    这是一个可重复的示例 与基本箱线图相比 最后一个治疗组又发现了一个异常值 dta lt structure list Treatment c A A A A A A A A A A A A A A A A B B B B B B B B B
  • 如何匹配 R 中的所有匹配项?

    我有 1000 个名字的列表 说A 我还有另外 5 个名字的清单 说B 我想找出这5个名字出现在1000个号码列表中的第几行 例如 Amy 在 A 中可以出现 25 次 B 里有艾米 我想知道 Amy 出现在 A 中的哪些行 我以前使用过
  • Pandas 组合不同索引的数据帧

    我有两个数据框df 1 and df 2具有不同的索引和列 但是 有一些索引和列重叠 我创建了一个数据框df索引和列的并集 因此不存在重复的索引或列 我想填写数据框df通过以下方式 for x in df index for y in df
  • 替换字符串/文本中“从第 n 次到最后一次”出现的单词

    这个问题以前曾被问过 但尚未得到令提问者满意的答案 https stackoverflow com questions 36368712 how to use stringrs replace all function to replace
  • 更改计划的开始日期以优化资源

    我有很多工作需要在特定的时间间隔执行 然而 我们每天完成这项工作的资源有限 因此 我正在尝试优化开始时间日期 开始时间日期只能向前移动 不能向后移动 以便每天使用的资源与我们的预算更加不相似 这些函数在下面的示例中使用 Function t
  • 从“parallel”包中的非基础 R 包调用函数,而无需在函数中将它们库化

    假设我正在尝试运行以下代码 library gregmisc library parallel myfunction lt function x combinations 10 x 1 10 cl lt makeCluster getOpt
  • 使用空/空字段值创建新的数据框

    我正在从现有数据帧创建一个新数据帧 但需要在这个新 DF 中添加新列 下面代码中的 field1 我该怎么做 工作示例代码示例将不胜感激 val edwDf omniDataFrame withColumn field1 callUDF v
  • 如何匹配R中列之间的多个对应值

    我有一个结构如下的数据框 ID Value1 Value2 1 a d g f 12 14 15 9 2 b c e 5 18 20 3 h i j 6 7 25 所以我有一个 ID 和两个值 对于值 1 有多个对应于值 2 的选项 我想最
  • DataFrame 在函数内部修改

    我面临一个我以前从未观察到的函数内数据帧修改的问题 有没有一种方法可以处理这个问题 以便初始数据帧不被修改 def test df df tt np nan return df dff pd DataFrame data 现在 当我打印时d
  • 使用许多特殊字符将 R 连接到 HANA 数据库时出现问题

    我在将 HANA 数据读入 R 时遇到问题 我已通过以下方式建立了连接 ch lt odbcConnect HANA uid USER pwd PW 并确认我已通过以下方式连接 sqlTables ch 这会调出我的表格列表 对我想要拉取的
  • 根据R中的前一行和当前行按组计算

    我可以根据 R 中的前一行和当前行进行计算 对于此数据框 df A B 1 2 2 2 2 3 3 4 5 5 B2 A2 0 5 B1 我可以使用这段代码来计算这个函数 for i in 2 nrow df B i lt 1 2 B i
  • 如何一次导入多个 .csv 文件?

    假设我们有一个包含多个 data csv 文件的文件夹 每个文件包含相同数量的变量 但每个文件来自不同的时间 R 中有没有办法同时导入它们 而不必单独导入它们 我的问题是 我有大约 2000 个数据文件需要导入 并且必须使用以下代码单独导入
  • 使用 purrr、broom 从许多单变量模型中获得整洁的输出

    我有一个由二进制结果列组成的数据框 y 和多个独立的预测列 x1 x2 x3 我想运行许多单变量逻辑回归模型 例如y x1 y x2 y x3 并将每个模型的指数系数 比值比 95 置信区间和 p 值提取到数据框 标题的行中 在我看来 使用

随机推荐

  • Spring MVC 处理程序拦截器不运行

    我有以下拦截器类 package cz coffeeexperts feedback server web interceptors import javax servlet http HttpServletRequest import j
  • 如何将图像转换为Buffer

    我想将图像 Mat 转换为缓冲区 console log image output Mat step 960 elemSize 3 sizes 160 320 empty 0 depth 0 dims 2 channels 3 type 1
  • openerp:ubuntu 上的内部服务器错误

    我刚刚在我的系统中安装了新的 OpenERP 8 0 替换了 Ubuntu 12 04 上现有的 OpenERP 7 0 我已经在家里的 Ubuntu 笔记本电脑上下载了这个 它运行得很好 并且想在我的办公室服务器上做同样的事情 我采取的步
  • STL 是否包含哈希表? [复制]

    这个问题在这里已经有答案了 可能的重复 C 中的哈希表 https stackoverflow com questions 133569 hashtable in c 有人可以提供一个简单的 C hash map 示例吗 https sta
  • 丢失的 ;在 for 循环初始化程序之后

    var nodeWordsString document getElementById nodeWordsTextArea value trim var nodeWordsStringArray nodeWordsString split
  • 在 mac el Capitan 上将 Brew 降级到之前版本 (opencv3/3.0.0)

    我在 mac 上并使用过brew安装opencv3 我有 opencv3 3 0 0 今天 我更新了它并获得了版本3 1 0 1 但是 此更新破坏了一切 当我尝试使用 VideoCapture 读取帧并使用 waitKey 函数时 它会因以
  • 如何从`MoyaError`获取错误状态代码?

    我正在使用一个Moya Moya ModelMapper and RxSwift执行网络请求 这是我的示例代码 let provider RxMoyaProvider
  • 如何使用 Realm 查询随机项目

    我只是好奇有没有办法从 Realm 查询随机项目 我需要从我的领域中获取 4 件随机物品 一件指定了 ID 的特定物品 Edit 我不知道 Realm 中有获取随机对象的方法 但您可以按照下面的描述进行操作 一种方法是查询所有对象 然后生成
  • 使用 C# 将光标移动到 MsWord 中文本的末尾?

    这个问题听起来可能很简单 但我无法找到任何解决方案 我想做的是将MsWord中的光标位置移动到文本末尾 我的代码如下 object StartPos 0 object Endpos 1 Microsoft Office Interop Wo
  • 如何使用 casperJS 等待 socket.io 连接返回数据?

    我正在抓取一个使用 socket io 填充一些选择标签选项的页面 在评估页面之前如何等待套接字接收数据 我在用casperJS http casperjs org 套接字代码 由目标站点加载 socket on list function
  • 导入错误:没有名为“Cython”的模块

    我正在尝试做from Cython Build import cythonize我收到消息ImportError No module named Cython 但是我用命令安装了Pythonpip install Cython 怎么了 Py
  • scapy 十六进制转储()

    我想知道哪个hexdump scapy 使用 因为我想修改它 但我根本找不到任何东西 我发现的是 def hexdump self lfilter None for i in range len self res p self elt2pk
  • Linux 上的 Java BlockingQueue 延迟较高

    我正在使用 BlockingQueue s 尝试 ArrayBlockingQueue 和 LinkedBlockingQueue 在我当前正在处理的应用程序中的不同线程之间传递对象 在此应用程序中 性能和延迟相对重要 因此我很好奇使用 B
  • 检查 JSON 和 XML 是否有效? C#

    我使用 newtonsoft json nethttp json codeplex com http json codeplex com 我想知道 如何验证 json 和 xml 是否有效 json xml 我如何验证这一点 您想要在服务器
  • 如何在双引号字符串中使用对象的属性?

    我有以下代码 DatabaseSettings NewDatabaseSetting select DatabaseName DataFile LogFile LiveBackupPath NewDatabaseSetting Databa
  • Qt中有进程内本地管道吗?

    Qt 有没有QIODevice适合的一对intra 处理点对点通信 人们可以使用混凝土QTCPSocket or QLocalSocket 但是服务器端连接API有点麻烦 而且强制数据通过OS似乎很浪费 以下是一个可用的基本实现 它使用内部
  • 将 UILabel 高度设置为 0

    是否可以通过编程方式设置 UILabel 的高度 我在 Xib 文件中添加了一系列约束 因此每个其他标签都依赖于其上方或下方的标签来定位 如果我可以使用 它会让我的生活变得更轻松 nameLabel height 0 我的 Xib 看起来像
  • 设置HttpClient的授权头

    我有一个用于 REST API 的 HttpClient 但是我在设置授权标头时遇到问题 我需要将标头设置为执行 OAuth 请求时收到的令牌 我看到一些 NET 代码表明以下内容 httpClient DefaultRequestHead
  • 如何使 COMReference 在 Azure CI/CD 管道中工作

    我在我的项目中使用了一个 dll 它被添加到我的项目文件中作为COMReference喜欢关注
  • 使用带有 $ 的逻辑向量对数据帧进行子集化

    我无法理解使用原因 and behavior of the 子集 a 中的符号data frame下面的例子是在我正在参加的初学者课程中提出的 不是现场教授 所以不能在那里询问 temp mat lt matrix 1 9 nrow 3 c