R 中“str”报告的第二列是什么?该列中的“atomic”是什么意思?

2023-11-24

Using str(survey_OM)我的数据框上表明我的所有数值数据都是atomic。如果我使用class(survey_OM$perc.OM)它返回numeric.

我一直以为第二栏str显示了数据的类别,但看起来并不那么简单......所以我的问题是:

  1. 第二列是什么str报告?
  2. What is atomic它与什么不同numeric?
  3. 为什么在这种情况下数据会显示为atomic并不是num or int?

谢谢。
dput(head(survey_OM, 20))提供:

> dput(head(survey_OM, 20))
  structure(list(lake = structure(c(3L, 3L, 3L, 3L, 3L, 3L, 3L, 
  3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L), .Label = c("E-2", 
  "E-4", "E pond", "EX 1", "GTH 110", "GTH 112", "GTH 114", "GTH 156", 
  "GTH 91", "GTH 98", "N-1", "NE-10", "NE-11", "NE-3", "NE-8", 
  "NE-9", "NE-9b", "S-10", "S-11", "S-3", "S-6", "S-7"), class = "factor"), 
  date = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
  2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("2007/06/15", 
  "2007/06/18", "2007/06/19", "2007/06/20", "2007/06/21", "2007/06/27", 
  "2007/06/29", "2007/07/07", "2007/07/19", "2007/07/20", "2008/07/26", 
  "2008/07/30", "2008/08/04", "2008/08/06"), class = "factor"), 
  depth = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
  2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("E", 
  "epi", "H", "hypo"), class = "factor"), 
  depth.m = structure(c(6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L), .Label = c("", "10.9", "12.9", "1.5", "2", 
  "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "2.7", "3", "3.1", 
  "3.5", "4", "4.2", "4.8", "4.9", "5", "5.1", "5.5", "6", 
  "6.5", "7", "7.2", "9.9", "not recorded"), class = "factor"), 
  rep = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("A", 
  "B", "C"), class = "factor"), 
  sed = c(0L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L), 
  notes = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
  1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("", 
  "col on SE side", "lg snail shell", "not collected", "very hard sediments"
  ), class = "factor"), 
  dry.mass = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0), 
  perc.OM = c(47.1300248455119, 47.4260808104607, 47.7349307375515, 46.4501104675465, 44.1513415737111, 43.5608499678045, 42.9921259842519, 42.2674677347574, 39.6643311064039, 
  39.0968130690949, 46.7768514928267, 46.9211608642763, 46.7877013177158, 
  47.0709930313588, 44.3241152581706, 43.7905468025952, 41.706074101281, 
  36.5061097383474, 37.4329041152142, 37.7757939038389)), .Names = c("lake", 
  "date", "depth", "depth.m", "rep", "sed", "notes", "dry.mass", 
  "perc.OM"), comment = c("working data frame of the sediment char from the 2007 sed    survey       created:", "Wed Apr 27 14:23:33 2011"), row.names = c(NA, 20L), class = "data.frame")

和完整的输出str(survey_OM) is:

> str(survey_OM)
'data.frame':   780 obs. of  9 variables:
 $ lake    : Factor w/ 22 levels "E-2","E-4","E pond",..: 3 3 3 3 3 3 3 3 3 3 ...
  ..- attr(*, "comment")= chr "names of the lakes"
 $ date    : Factor w/ 14 levels "2007/06/15","2007/06/18",..: 2 2 2 2 2 2 2 2 2 2 ...
  ..- attr(*, "comment")= chr "date that the cores were collected"
 $ depth   : Factor w/ 4 levels "E","epi","H",..: 2 2 2 2 2 2 2 2 2 2 ...
  ..- attr(*, "comment")= chr "relative depth ID; epi = shallowest corable Z, hypo =   deepest Z, S, M, D = shallow, med, deep"
 $ depth.m : Factor w/ 28 levels "","10.9","12.9",..: 6 6 6 6 6 6 6 6 6 6 ...
  ..- attr(*, "comment")= chr "depth that core was collected in m"
 $ rep     : Factor w/ 3 levels "A","B","C": 1 1 1 1 1 1 1 1 1 1 ...
  ..- attr(*, "comment")= chr "replicate ID for core"
 $ sed     : atomic  0 1 2 3 4 5 6 7 8 9 ...
  ..- attr(*, "comment")= chr "depth of sample from sed/water interface in cm"
 $ notes   : Factor w/ 5 levels "","col on SE side",..: 1 1 1 1 1 1 1 1 1 1 ...
  ..- attr(*, "comment")= chr "comments on sample"
 $ dry.mass: atomic  0 0 0 0 0 0 0 0 0 0 ...
  ..- attr(*, "comment")= chr "dry mass of the sediment at that sed Z in g/m^2"
 $ perc.OM : atomic  47.1 47.4 47.7 46.5 44.2 ...
  ..- attr(*, "comment")= chr "percent OM of the samp. based on LOI at 550d C"
 - attr(*, "comment")= chr  "working data frame of the sediment char from the 2007 sed survey created:" "Wed Apr 27 14:23:33 2011"

看着utils:::str.default,我们看到我们得到了通常的输出int, num等,如果出现以下情况if陈述正确的是:

if (     is.vector(object) 
     || (is.array(object) && is.atomic(object))
     ||  is.vector(object, mode = "language") 
     || is.vector(object, mode = "symbol")
   )

We get atomic如果这个陈述是错误的(否则它就会是int, num, etc).

查看帮助页面is.vector,我们看到只有当它是一个除名称之外没有属性的向量时它才返回 true。这是一个数据框,其中b有一个额外的属性:

d <- data.frame(a=1:4, b=5:8)
attr(d$b, "tmp") <- "surprise!"

并打电话str其上给出atomic for b代替int.

> str(d)
'data.frame':   4 obs. of  2 variables:
 $ a: int  1 2 3 4
 $ b: atomic  5 6 7 8
  ..- attr(*, "tmp")= chr "surprise!"

我在您的编辑中看到您的数据框元素上有额外的属性,并且您也获得了有关您的属性的这些额外行,因此这似乎可以解释它。

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

R 中“str”报告的第二列是什么?该列中的“atomic”是什么意思? 的相关文章

  • 如何很好地注释 ggplot2(手册)

    Using ggplot2我通常使用geom text和类似的东西position jitter注释我的情节 然而 对于一个漂亮的情节 我经常发现手动注释是值得的 像下面这样 data2 lt structure list type str
  • magrittr 管道中的 WOE

    如何将下面的证据代码权重放入 magrittr 管道中 df gt 我尝试过的一切似乎都不起作用 df library Information library magrittr df a c aa bb cc aa aa aa bb cc
  • 在R中使用plotly在轴标题中换行和下标

    我刚开始使用plotly对于 R 中的一些交互式散点图 并且在轴标签上遇到困难 通常我设计我的情节ggplot2然后使用ggplotly函数来转换它们 但这有时由于某种原因非常慢 所以我想直接在中创建我的图plotly 我现在尝试更改轴标题
  • R + ggplot2 - 无法分配大小为 128.0 Mb 的向量

    我有一个 4 5MB 9 223 136 行 的文件 其中包含以下信息 0 0 0 0147938 3 67598e 07 0 0226194 7 35196e 07 0 0283794 1 10279e 06 0 033576 1 470
  • 如何计算满足条件的行数

    假设我有以下数据框 Data1 X1 X2 1 15 1 2 3 1 3 7 0 4 11 1 5 1 0 6 9 0 7 18 0 8 6 1 9 3 1 我想知道如何找到观察的总数X1大于 9 并且X2等于1 我想我需要使用sum 但我
  • 将角色分成几部分

    我观察到以下特征 l lt mod range1 seq m n 0 1 range2 seq 2 2 0 1 range3 seq 2 2 0 1 在 R 中使用正则表达式我想要拆分l在以下结构中 1 mod range1 seq m n
  • 如何在双对数图(ggplot2)中添加趋势线?

    我需要绘制一个遵循幂律分布的数据向量 所以如果我将它们绘制在对数轴上 它们将是一条直线 但是 如果我没有明确提供 y 参数 我不知道如何绘制 这是代码 library poweRlaw library ggplot2 xmin 1 alph
  • 将儒略日期转换为 PosixCt 日期

    我发现自己在解决这个问题 我需要将 R 中的儒略日期转换为正常日期 YYYY MM DD 我知道我可以指定as Date julian date origin 但我不知道应该提供哪个来源 我的朱利安日期类似于 2458010 2458011
  • 将 dplyr 中的starts_with与部分列名称的向量一起使用

    我想使用 dplyr 选择与字符串向量匹配的某些列 one lt seq 1 10 two lt rnorm 10 three lt runif 10 1 2 four lt 10 1 df lt data frame one two th
  • 重叠并固定小平面中的 x 尺度(尺度=“自由”)以制作电影

    在另一篇文章中 Justin 的帮助下 我用以下方法绘制了模拟结果facet gridggplot2 中的选项 包含数据和答案的帖子在这里 使用facet grid选项通过ggplot2绘制数据框的列 https stackoverflow
  • 在 r 中使用 SSasymp

    我想我不知道如何在 r 中使用 SSasymp 函数 我想为我的项目创建一个渐近函数 我试过这个 c lt seq 0 200 0 5 d lt SSasymp c 500 0 log 50 plot c d type l log 50 应
  • 计算带状矩阵的 colCumsums 的更快替代方案

    我是 R 和 stats 的新手 在我当前工作的领域中 我需要以独特的方式计算累积列总和 最初提供宽度为 b 行数为 n 的方带矩阵 例如 n 8 且 b 3 0 1 2 7 0 0 0 0 0 0 3 6 7 0 0 0 0 0 0 3
  • 在前两个冒号上分割字符串

    我想在前两个冒号上拆分一列字符串 但不在任何后续冒号上拆分 my data lt read table text my string some data 123 34 56 78 100 87 65 43 21 200 a4 b6 c888
  • 使用 R 中“rpart”包中的生存树来预测新的观察结果

    我正在尝试使用 R 中的 rpart 包来构建生存树 并且我希望使用这棵树来对其他观察结果进行预测 我知道有很多涉及 rpart 和预测的问题 但是 我还没有找到任何解决 我认为 特定于将 rpart 与 Surv 对象一起使用的问题的方法
  • 在 Microsoft Windows 上安装 RQuantLib

    我需要安装R包RQuantLib在 Microsoft Windows 计算机上 这个包没有二进制文件 所以我下载了 tar 源 我打开它 它包含 QuantLib C 库 所以我需要编译这个包 我不想安装 Visual Studio 我使
  • Quanteda 包,朴素贝叶斯:如何预测不同特征的测试数据?

    I used quanteda textmodel NB创建一个模型 将文本分类为两个类别之一 我将模型拟合到去年夏天的训练数据集上 现在 我今年夏天尝试使用它对我们在工作中收到的新文本进行分类 我尝试这样做并收到以下错误 Error in
  • 无法将 bigrquery 与标准 sql 一起使用

    我正在 R ipython 笔记本 相对 R 新手 中工作 并尝试使用 bigrquery 从 Google Big Query 中提取数据 我被告知这应该很简单 但使用标准 sql 提取不起作用 这是我的代码 require bigrqu
  • R:如何在不耗尽内存的情况下重新绑定两个巨大的数据帧

    我有两个数据框df1 and df2每个都有大约 1000 万行和 4 列 我使用 RODBC sqlQuery 将它们读入 R 没有任何问题 但是当我尝试rbind他们 我收到了最可怕的 R 错误消息 cannot allocate me
  • R 版本 4.0.0 上的 ROracle

    当尝试使用 ROracle 时 我收到以下错误消息 gt library ROracle Error package or namespace load failed for ROracle package ROracle was inst
  • 将一个 Rmarkdown 文档中的代码块插入到另一个 Rmarkdown 文档中

    我一直在举办一些小型 R 教程 研讨会 我将 挑战脚本 保存在 Rmarkdown 文档中 它们包含自由文本和 R 代码块 一些代码块是预先填充的 例如 为了设置数据集以供以后使用 而一些代码块则供与会者在研讨会期间填写代码 对于每个挑战脚

随机推荐

  • 如何在前台运行 GcmListenerService

    我的 GCM 服务有时会出现问题 当我的智能手机的 RAM 自动清除时 该服务会关闭 请阅读this如果您需要更多详细信息 据我了解 如果我将服务设置为在前台运行 它应该有助于系统用 RAM 删除它 方法为Service class onS
  • HTML5 与 HTML4 - h1 标签呈现有额外的空间 - 如何删除?

    我选取了一个 DTD 为 HTML4 Transitional 的页面 并将文档类型更改为h1 和其下方的 div 之间会出现额外的空间 我没有对标记或 CSS 进行任何其他更改 JSFiddle 示例 http jsfiddle net
  • 是否有不需要空终止字符串的 strtol 等效项?

    是否有类似于 strtol 的标准 C 函数 它将采用 char 和非空终止字符串的长度 我知道我可以将字符串复制到空终止区域 但出于效率原因 这是不可取的 标准库中没有这样的函数 您要么必须使用临时缓冲区方法 要么从头开始编写自己的函数
  • Python导入csv到列表[重复]

    这个问题在这里已经有答案了 我有一个包含大约 2000 条记录的 CSV 文件 每条记录都有一个字符串和一个类别 This is the first line Line1 This is the second line Line2 This
  • iOS 版 Google 地图,swift - 如何显示标记之间的整个折线?

    我正在尝试在谷歌地图视图中拟合一条折线 折线是通过谷歌地图方向API中的overview polyline获取的 想知道如何将编码的折线转换为可以使用的东西 我需要使折线适合地图视图 我发现要做的就是适应边界以显示所有标记 但不显示整个折线
  • 将代码与两个 subversion 存储库同步

    首先介绍一下背景 我正在使用来自远程 SVN 存储库的 基本 代码 不受我的控制 代码还没有标记 所以我总是需要跟上主干 由于多种原因 最重要的是我们对代码的本地扩展具有 利基 性质 并且旨在解决使用代码的项目的特定问题 我无法使用远程存储
  • Kafka I/O 错误 java.io.EOFException: null

    我正在使用 Kafka 0 8 2 0 Scala 2 10 在我的日志文件中 我间歇性地看到以下消息 这似乎是一个连接问题 但我正在本地主机中运行这两个问题 这是无害的警告消息还是我应该采取措施来避免它 2015 10 30 14 12
  • 从图表系列获取主题颜色信息

    我有一个使用一种颜色的图表系列 它可以是msoThemeColorAccent lt gt 或任何其他 用于标记线 另一种颜色用于标记填充 可以是msoThemeColorAccent lt gt 打火机 x 或任何其他 并且没有线条 我想
  • find 命令查找文件并将它们连接起来

    我正在尝试查找所有类型的文件 gz and cat他们到total gz我想我已经很接近这一点了 这是我用来列出所有的命令 gzfiles find home downloaded maxdepth 3 type d name exec b
  • Toast:在 Android 中集成 Google Plus 时发生内部错误

    我正在将 Google Plus 集成到我的 Android 应用程序中 我已经在 Google API 控制台中创建了该项目 我创建了 OAuth 客户端 ID 并仔细检查了包名称和密钥库 SHA1 但两者都是正确的 但我仍然得到Inte
  • Quartz 中每 50 秒执行一次 Cron 表达式

    我每 50 秒使用 Quartz 和 cron 表达式运行我的作业 Cron Expression 0 50 发生的情况是我的工作以秒为单位运行 50 60 50 60 而且不是每 50 秒一次 并且不在第二个 0 处运行 从 0 开始每
  • 获取 JSON 对象的大小

    我有一个由 AJAX 请求返回的 JSON 对象 但我遇到了一些问题 length因为它不断返回undefined 只是想知道我是否正确使用它 console log data length console log data phones
  • Apache Velocity:是否有一种标准方法可以从命令行验证模板的正确性?

    我们的网站使用阿帕奇速度模板语言 我们的内容管理系统已经检查所有生成的 XML 文档的格式是否良好 我们被要求在将文件推送到实时站点之前检查文档以捕获 Velocity 语法错误 是否有一种标准方法可以从命令行验证 Velocity 模板的
  • 损失与准确率之间的关系

    在训练 CNN 模型时 实际上有可能在每个时期减少损失并降低准确度吗 我在训练时得到以下结果 有人可以解释发生这种情况的可能原因吗 至少有 5 个原因可能导致此类行为 异常值 假设您有 10 张完全相同的图像 其中 9 张属于类别A一个属于
  • 所有 Python 类都应该扩展对象吗? [复制]

    这个问题在这里已经有答案了 我发现以下两项都有效 class Foo def a self print hello class Foo object def a self print hello 所有 Python 类都应该扩展对象吗 不扩
  • 传递给宏的变量在错误的命名空间中解析?

    The Noir macro defpage给我带来了一点麻烦 我正在尝试构建与此类似的调用 defpage post some url data some stuff 但是 不要使用关键字 post我想使用一个变量 如下所示 def my
  • 存储过程版本控制

    如何管理存储过程的修订 我们在 SQL Server 2005 上有一个 BI 解决方案 包含数百个存储过程 将这些内容导入 Subversion 的好方法是什么 您推荐使用哪些工具将存储过程编写为文件 毫无疑问 您可以购买许多现成的产品
  • HTTP 重定向绑定 SAML 请求

    假设执行 SP init SSO 使用 HTTP Redirect Binding 而不是 HTTP POST Binding 并且需要签名的 AuthnRequest 这意味着在 URL 中包含 SAMLRequest Q1 我需要在 U
  • 目录在 github 上显示为灰色文件夹,但不跟踪其内容。为什么?

    我有一个目录 ui kit 它在 github 上显示为灰色文件夹 它不可点击 这是 gitignore的全部内容 Fleetwit docs uploads env prj pui Logs logs log Node node modu
  • R 中“str”报告的第二列是什么?该列中的“atomic”是什么意思?

    Using str survey OM 我的数据框上表明我的所有数值数据都是atomic 如果我使用class survey OM perc OM 它返回numeric 我一直以为第二栏str显示了数据的类别 但看起来并不那么简单 所以我的