R中的data.table
是data.frame
的增强版本。由于其执行速度和键入的代码较少,它在 R 中变得流行。data.table
的目的是创建与数据框相同的表格数据,但语法各不相同。在下面的示例中,可以看到数据表的语法:
DataTable = data.table(name = c("a", "b", "c", "d"), id = (7, 0, 3, 4))
DataTable
在上面的例子中使用函数data.table()
,然后使用了c()
函数,它表示连接,用于将数据打印为系列,名称将是字符串类型,因此,使用“ ”
和id
作为整数类型,因此无需在引号中指定。
R中的data.frame
类似于用于创建表格数据的数据表,但数据表提供了比数据框更多的功能,因此,通常大部分人都更喜欢data.table
而不是data.frame
。但是 data.frame
也很好使用,现在看看下面的数据框语法。与 data.table
的语法类似,data.frame
在这里也明显相同,这里使用函数 data.frame()
而不是data.table()
。
# student id
stuid = c(2, 5, 3, 4, 6, 7, 4, 2, 0)
# student age
age = c(23, 45, 67, 23, 41, 43, 54, 67, 89)
# sex of the student
sex = c(1, 1, 0, 0, 0, 1, 0, 1, 1)
# student info
stuinfo = data.frame(empidno, age, sex, status)
stuinfo
上面的例子以表格形式提供了学生的数据。如果观察,data.table
的代码比 data.frame
的代码少,因此,data.table
编译所需的时间更少,并且输出速度很快,这使得数据表被广泛使用。
data.table | data.frame | |
---|---|---|
语法:data.table() |
语法:data.frame() |
|
data.table 是 data.frame 的重写形式,在优化的 C(或)data.table 继承自 data.frame 。 |
data.frame 是 R 中的基类,也是 R 中的默认值。 |
|
data.table 用于更复杂的数据结构,用于大数据。 |
data.frame 用于构建小型表格和矩阵等。 |
|
在许多情况下,data.table 比Spark快得多。 |
data.frame 比 data.table 慢 20 倍。 |
|
内置功能,如滚动连接,重叠范围使用户理清广泛的问题。 | data.frame 缺乏这些功能,但它对初学者有好处。 |
|
代码高效(可以编写更少的行数数据表中的代码) | 与data.table 相比,需要编写更多的代码行。 |
|
要将 data.table 转换为 data.frame ,使用 : setDF(dt) 其中 DF = 数据框,dt = 数据表。 |
要将 data.frame 转换为 data.table ,使用 : setDT(df) 其中,DT = 数据表,df = 数据框。 |
|
data.table 由于其先进的功能以及速度和内存而被广泛使用。 |
data.frame 也被使用,但不是data.table 那么多,它对初学者来说非常好。 |
R语言data.table和data.frame的区别
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:R语言data.table和data.frame的区别
本文链接:https://www.vsdiffer.com/vs/data-table-vs-data-frame-in-r-programming.html
免责声明:以上内容仅代表 个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。