在 r 中使用 readr 读取文件时的大整数
Posted
技术标签:
【中文标题】在 r 中使用 readr 读取文件时的大整数【英文标题】:big integers when reading file with readr in r 【发布时间】:2016-08-11 11:10:12 【问题描述】:我想使用readr
包,因为我将来会处理一些更大的文件。我的问题是,有一个名为Intensity
的列有一些非常大的值(例如5493500000
)。我的问题是,第一次出现这个大值是在第 2200 行,readr
已经将该列定义为integer
而不是numeric
,并产生缓冲区溢出。
有没有办法只为read_tsv
函数提供一个列类型,因为我不想为所有(大约)40 列提供正确的类型。
感谢任何帮助。
【问题讨论】:
【参考方案1】:您需要参数col_types = cols(Intensity = col_double())
,根据手册,这将防止基于前 1000 行的列类型插补。如果您只想要列的子集,请使用cols_only
。
【讨论】:
我的语法不正确,想知道我现在是否需要为每列提供正确的数据类型。没有得到我也可以覆盖单一类型!坦克就解决了我的问题。以上是关于在 r 中使用 readr 读取文件时的大整数的主要内容,如果未能解决你的问题,请参考以下文章
Read.Table 与 Readr 包中的 Read_Table - Readr 添加的额外列
R语言导入读取网络CSV数据(Read a CSV from a URL)实战:R原生read_csvreadr包data.table