gpt4 book ai didi

r - R 中的 fread data.table 不读取列名

转载 作者:行者123 更新时间:2023-12-01 07:13:12 30 4
gpt4 key购买 nike

将数据文件读入 R 时,我可以将其作为 data.frame 读入或 data.table使用 data.table包裹。我更愿意使用 data.table将来因为它可以更好地处理大数据。但是,这两种方法都存在问题(对于 data.frames 是 read.table,对于 data.tables 是 fread),我想知道是否有一个简单的修复方法。

当我使用 read.table生产 data.frame , 如果我的列名包含冒号或空格,它们将被句点替换,这是我不想要的。我希望以“原样”读取列名。

或者,当我使用 fread生产 data.table ,我的列名根本没有读入,这显然是不希望的。

查看下面的要点以获取可重现的示例:

https://gist.github.com/jeffbruce/b966d41eedc2662bbd4a

干杯

最佳答案

这是一个可能有效的解决方案。我不确定这是否是最短的解决方案,或者您可以通过巧妙地使用 drop 来做到这一点。在数据表中,但下面的 hack 确实有效。 “问题”是文件中的行号。

先读入头文件,然后添加到数据表中

header <- read.table("yourfile.csv", header = TRUE, nrow = 1)
indata <- fread("yourfile.csv", skip=1, header=FALSE)
setnames(indata, colnames(header))

关于r - R 中的 fread data.table 不读取列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32767351/

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