gpt4 book ai didi

r - data.frame、tibble 和 matrix 之间有什么区别?

转载 作者:行者123 更新时间:2023-12-04 16:38:49 30 4
gpt4 key购买 nike

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

去年关闭。




Improve this question




在 R 中,某些函数仅适用于 data.frame和其他人只在 tibblematrix .
使用 as.data.frame 转换我的数据或 as.matrix经常解决这个问题,但我想知道这三个有什么不同,为什么我们需要这三个?

最佳答案

因为它们有不同的用途。
简短的摘要:

  • 数据框是一个等长向量的列表。这意味着,添加列就像向列表添加向量一样简单。这也意味着虽然每列都有自己的数据类型,但列可以是不同的类型。这使得数据帧可用于数据存储。
  • 矩阵是具有二维的原子向量的特例。这意味着整个矩阵必须具有单一数据类型,这使得它们可用于代数运算。在某些情况下,它还可以使数字运算更快,因为您不必执行类型检查。但是,如果您对数据框足够小心,则不会有太大区别。
  • Tibble 是 tidyverse 中使用的数据框的现代化版本.他们使用多种技术使它们“更智能”——例如延迟加载。

  • Long description R 中使用的矩阵、数据帧和其他数据结构。
    所以总结一下:矩阵和数据框都是二维数据结构。这些中的每一个都有不同的目的,因此行为不同。 Tibble 试图对广泛传播的 Tidyverse 中使用的数据框进行现代化改造。
    如果我尝试从不太技术的角度重新表述它:
    每个数据结构都在进行权衡。
  • 数据框为了方便和清晰而牺牲了一点效率。
  • Matrix 是高效的,但更难使用,因为它对其数据实现了限制。
  • Tibble 正在以更高的效率和更方便的方式进行交易,同时还试图通过尝试将计算推迟到似乎不是它的错的时候的技术来掩盖上述权衡。
  • 关于r - data.frame、tibble 和 matrix 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64856424/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com