使用fread读取对齐的列数据

统计量

我遇到了一个像这样的文件:

COL1        COL2          COL3
weqw        asrg          qerhqetjw
weweg       ethweth       rqerhwrtjw
rhqerhqerhq qergqer       qerhqew5h
qerh        qergqer       wetjwryerj

我不能直接加载它fread,所以我代替\s+通过,sed比我给了FREAD并解决它。但是,是否有内置的方式可以读取此类数据data.table

迈克尔·奇里科

fread尚不具备读取固定宽度文件的功能

我也经常碰到这样烦人的文件。随时在Github页面上添加功能请求

在您的情况下可能并非如此,但是您遇到的解决方案sed在很多FWF上都不起作用,因为列之间没有空格,例如,您会看到像00010这样的字符串实际上包含3个字段。

在这种情况下,您将需要一个字段宽度字典,这时您有几个选择:

  1. read.fwfR
  2. 编写一个fwf->csv程序(我使用我写的程序,Python速度非常快,可以根据需要共享代码)-基本来说是初始方法的增强版本,因此您不必再处理FWF
  3. 在Excel / LibreOffice / etc中打开它;有一个本地FWF阅读器尝试(通常很差)猜测列的宽度,这至少为您指定了列宽的工作量减少了一半。然后,您可以将其另存为.csv或其他名称。

我个人最常坚持第二种选择。read.fwf没有像fread这样优化,所以可能会很慢。而且,如果您有很多(比如20+)的FWF可供阅读,那么第3个选项将非常繁琐。

但是我同意内置这样的东西会很好fread

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用fread()读取后无法对数据帧进行子集

来自分类Dev

使用函数 fread() 读取文件中的数据块

来自分类Dev

使用 fread 从文件中读取数据到结构体

来自分类Dev

将数据读取到SAS中,列未对齐

来自分类Dev

如何从数据数组的结构中搜索特定的结构并使用fread进行读取?

来自分类Dev

在C中使用fread读取文件

来自分类Dev

使用fread和fseek逐行读取

来自分类Dev

在C中使用fread读取文件

来自分类Dev

使用 fseek 、 fread 和指针读取文件

来自分类Dev

使用Spark从HBase读取特定的列数据

来自分类Dev

使用fread导入数据后,所有列均作为字符

来自分类Dev

使用fread导入数据后,所有列均作为字符

来自分类Dev

当我使用fread读取大表时,它会稍微改变其中一列的数字

来自分类Dev

为什么不使用fread读取目录文件?

来自分类Dev

C-使用fread逐字节读取文件

来自分类Dev

以相反的顺序使用fread()读取文件会导致内存泄漏?

来自分类Dev

尝试使用 fread 读取字节但出现分段错误 11

来自分类Dev

使用 fread() 在 PHP 中读取 DBF 文件的奇怪行为

来自分类Dev

fread 读取文件末尾

来自分类Dev

使用“ sScrollY”时,数据表的表标题和列数据未对齐

来自分类Dev

使用genfromtxt读取具有不同列长的数据

来自分类Dev

使用Pandas读取具有列组的数据

来自分类Dev

fread-指定一列的数据类型

来自分类Dev

使用 C++ 的列对齐

来自分类Dev

选择数据时如何使列右对齐?

来自分类Dev

将数据读入SAS,列未对齐

来自分类Dev

DT数据表中的列对齐

来自分类Dev

数据表固定列未对齐

来自分类Dev

按日期对齐熊猫列数据框