问题标签 [readr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 使用 readr cols_only 选择特定列
我正在使用一个没有列标题的 delim 文件。有 45 列,但我只想要前 26 列。在处理多个未命名的列时,我不太清楚 cols_only 的正确语法。给定我下面的代码,cols_only 去哪里了?
r - 从 read_csv() 中删除空列
我正在尝试使用readr 包读取此处read_csv()
链接的 csv 文件,然后删除空列。
如果我read.csv()
改为使用,则可以使用 8:12 轻松删除空列
但是,当我使用该函数读取 csv 文件时read_csv()
,相同的代码会出错;
如何删除这些空列?
正确命名空列似乎没有意义,以便我可以删除它们。我更愿意使用,read_csv()
而不是read.csv()
因为它使以后的分析工作更轻松。
r - readr - 在 CSV 中导入日期列
我需要关于如何readr
通过输入我自己的日期格式来导入数据的建议我正在尝试的方式是:
但它给了我错误
" col_date 中的错误("02/03/2015", "%d/%m/%Y"): 未使用的参数 ("%d/%m/%Y")
当我使用它测试单个输入时,parse_date("02/03/2015", "%d/%m/%Y")
它会给我想要的结果
如果有人能帮助我,我真的很感激,在过去的几天里一直被困在这个问题上。
r - 如何让 readr 处理引用的 NA 值?
运行此产生:
实际上,这些"N/A"
值最终为NA
,但是有没有更优雅的方法来处理这个?例如,这运行没有问题,说明了所需的行为。
r - 解压缩文件时 read_fwf 不工作
我想将几个固定宽度格式的 txt 文件读入 R,但我首先需要将它们解压缩。
由于它们是非常大的文件,我想read_fwf
从readr
包中使用它,因为它非常快。
当我做:
read_fwf(unz(zipfileName, fileName), fwf_widths(colWidths, col_names = colNames))
我收到这个错误Error in isOpen(con) : invalid connection
但是,当我这样做时:
read.table(unz(zipfileName, fileName))
没有指定宽度,它读起来R
就很好。关于为什么这不起作用的任何想法read_fwf
?
我无法制作可重现的示例。这是我得到的:
r - 在 r 中使用 readr 读取文件时的大整数
我想使用这个readr
包,因为我将来会处理一些更大的文件。我的问题是,有一个名为的列Intensity
具有一些非常大的值(例如5493500000
)。我的问题是,第一次出现这个大值是在第 2200 行,并且readr
已经将列定义为integer
而不是numeric
并产生缓冲区溢出。
有没有办法只为函数提供一个列类型read_tsv
,因为我不想为所有(大约)40 列提供正确的类型。
任何帮助操作系统表示赞赏。
r - R readr::read_fwf 使用 fwf_widths 忽略字符
我想知道是否有一种简单的方法可以使用 R 中 readr 包中的 read_fwf 跳过字符。
例如,修改文档中的示例之一
抛出错误:
但是,使用基本的 read.fwf 函数可以正常工作:
有没有办法可以模仿这种行为readr::read_fwf
?(我主要是出于性能原因感兴趣)。
r - 使用 readr 包在 R 中读取固定宽度的文本文件时跳过变量
由于文件宽度固定,我正在使用readr包读取 R 中的一些文本文件,但在某些文件上我得到了cannot allocate vector of size...
. 我假设有些文件太大了,但我实际上并不需要其中的所有信息,只需要几个变量。
这就是我现在用来读取完整文件的方法
这些是 21 个变量,但我可能只需要其中的 10 个。当然,它们在文本文件中并不相邻,但我确实知道它们在文件中的确切位置。有没有办法让我可以读取我想要的变量并忽略其他变量以节省内存?
谢谢!
r - R:如何读取带有 data.table::fread 的 CSV 文件,其中逗号为小数点,点为千位分隔符 =“。”
我得到了几个 CSV 文件,其中包含本地德语风格的数字,即以逗号作为小数分隔符,将点作为千位分隔符,例如 10.380,45。CSV 文件中的值用“;”分隔。这些文件还包含来自字符、日期、日期和时间以及逻辑类的列。
read.table 函数的问题在于,您可以使用 dec="," 指定小数点分隔符,但不能指定千点分隔符。(如果我错了,请纠正我)
我知道预处理是一种解决方法,但我想以某种方式编写我的代码,其他人可以在没有我的情况下使用它。
通过设置我自己的类,我找到了一种使用 read.csv2 以我想要的方式读取 CSV 文件的方法,如以下示例所示。基于最优雅的方式来加载 csv,点为 R 中的千位分隔符
我现在的问题是,不同的数据集最多有 200 列和 350000 行。使用上面的解决方案,我需要 40 到 60 秒来加载一个 CSV 文件,我想加快速度。
通过我的研究,我fread()
从data.table
包装中发现,这真的很快。加载 CSV 文件大约需要 3 到 5 秒。
不幸的是,也无法指定千位分隔符。因此,我尝试将我的解决方案与 colClasses 一起使用,但似乎存在一个问题,即您不能将单个类与 fread https://github.com/Rdatatable/data.table/issues/491一起使用
另请参阅我的以下测试代码:
所以我的问题是:有没有办法用 fread 读取数值为 10.380,45 的 CSV 文件?
(或者:读取具有此类数值的 CSV 的最快方法是什么?)
r - 将 csv 导入到 r 时处理特殊字符
我无法将 csv(分号分隔)导入 R。问题是某些列包含带有特殊字符(如分号)的文本,导致某些行中的列数不相等。
特殊字符被配额包围,例如“;”。该文件为 2.3 GB。我可以在 Excel 中正确打开这个文件(至少是其中的一部分)。
我尝试了 readr、data.table、basic R 并失败了。
我可以在 Notepad++ 中做到这一点,但更喜欢 R。