问题标签 [read.csv]

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.

0 投票
0 回答
45 浏览

r - 如何优化 read.csv

我有几个大的(600000+ 行,~50 列)CSV 文件,我通过read.csv(). 每次阅读都会占用我宝贵的几分钟时间,所以我想尽可能加快这一步。我之前做过的一件事是识别出我不想要的列并阻止 R 读取它们。感谢Cross Validated的回答,我想出了这个丑陋的东西来做到这一点:

这使得该过程明显更快,但仍然不够快。还有什么我可以做的吗?我正在使用一台好机器(2 GHz Intel Xeon,24 GB RAM),对于不得不等待这么长时间才能导入一个甚至不是很大的数据集感到有点失望。

0 投票
1 回答
1891 浏览

r - datatable.integer64 参数对我不起作用应该吗?

我正在尝试加载,integer64因为表明该参数未实现但已实现。虽然 fread 一直加载为.characterfread ?freadinteger64options(datatable.integer64)int64

我怎么知道fread加载为character. 编辑[如果colClasses是答案,我认为它不允许指定单个列名或索引,并且我加载的表有几十列,所以不切实际... => 这是错误的]

这是一个示例

0 投票
3 回答
1322 浏览

r - R中没有引号的read.csv行

我正在尝试从 R 中读取一个巨大的 csv 文件,但是我遇到了麻烦,因为假定为字符串格式的列的元素没有用引号分隔,并且每次有新的行时都会创建一个新行线。我的数据由〜分隔。

例如,我的数据看起来类似于:

我希望得到这样的东西:

但我最终得到了这样丑陋的东西:

我试图在 read.csv 中设置 allowEscapes = TRUE 但这并没有奏效。我的输入目前看起来像这样:

我的下一个想法是在每个〜之后插入一个引号,但我希望看看是否有更好的方法。

任何帮助,将不胜感激。

0 投票
4 回答
93125 浏览

r - read.csv 空白字段为 NA

我有制表符分隔的文本文件,名为“a.txt”。D 列是空的。

我想让数据框看起来和完全像文本文件一样,在第二行和第二列有一个空格。

不幸的是,read.csv 正在将所有空白和 NA 转换为“NA”。我想将 NA 和 NaN 读取为字符。

总结一下:我想在输出文件中复制相同的值而不修改它们:

  • 如果输入中有空白,则输出应为空白。
  • 如果输入有 NA 或 Nan,那么输出也应该有 NA 或 NaN。
0 投票
2 回答
92 浏览

r - 如何在不依赖对 R 中 Column 的位置引用的情况下遍历数据帧的行

如果“第 5 列”中的字符串包含在“第 6 列”中较长的字符串中,我已经知道如何在我的数据框中创建一个新列 = TRUE - 我可以通过引用我的列的名称来做到这一点而不是使用 [r,c] 位置参考?

作为一名程序员,我对将事物称为“第 5 列和第 6 列”感到紧张......我想引用这些列中捕获的变量的名称,这样我就不必依赖我的源文件总是有列的顺序相同。此外,我可能会忘记该位置引用,并在代码的前面添加一些导致位置引用稍后失败的内容......当您可以考虑一般列的名称(而不是它们在某个点的特定顺序时间)构建强大的生产强度代码要容易得多。

我在这个网站上找到了一个相关的问题,它使用了我想要避免的相同类型的位置参考......

如何在数据框的每一行上执行一个函数,并且只在该行中插入一个输出元素作为新列

虽然 R 看起来确实非常灵活,但它似乎缺少很多你想要的可扩展、生产强度代码的特性……但我希望我错了,可以学习其他方法。

谢谢!

0 投票
2 回答
405 浏览

r - 按行组合全局环境中的几个数据框(rbind)

我正在开发一个项目,该项目从给定文件夹导入所有 csv 文件并将它们合并到一个文件中。我能够从文件夹中的每个文件中导入我想要的行和列,但现在需要帮助将它们全部合并到一个文件中。我不知道最终会得到多少个文件(可能大约 120 个),所以我不想将它们一一合并。

这是我到目前为止所拥有的:

代码的第一部分创建了一系列标记为 df.1、df.2 等的数据帧。我希望它们最终出现在一个名为 df 的最终数据帧中。所有文件的结构都相同。

如果有人有几分钟的额外时间,我将非常感谢一些帮助!谢谢!

0 投票
1 回答
66145 浏览

r - R 中 read.csv() 和 read.csv2() 之间的区别

在 R 中,read.csv() 和 read.csv2() 有什么区别

官方文档说,

在各种欧洲语言环境中,由于逗号字符用作小数点,因此应使用函数 read.csv2 代替

这是什么意思。从表面上看,我看不出有什么不同。任何人都可以给出一个具体的例子来进一步澄清它。

0 投票
5 回答
36305 浏览

r - How to read only lines that fulfil a condition from a csv into R?

I am trying to read a large csv file into R. I only want to read and work with some of the rows that fulfil a particular condition (e.g. Variable2 >= 3). This is a much smaller dataset.

I want to read these lines directly into a dataframe, rather than load the whole dataset into a dataframe and then select according to the condition, since the whole dataset does not easily fit into memory.

0 投票
2 回答
183 浏览

r - 文件名上的 read.csv 循环矢量化

我对 R 很陌生,如果编程看起来很糟糕,我很抱歉。

目标是基于公共前缀创建文件名,即给定前缀循环 x 次以生成前缀 1、前缀 2、前缀 3。然后使用这些文件名读取.csv(prefix-1,prefix-2,prefix-3)。

我已经让代码工作了,但效率很低:

我正在尝试学习如何提高效率,上述工作符合我的目的,但我觉得我应该能够将它包装在产生名称的初始循环中。当我尝试修改原始循环时,我无法让它工作......

而不是得到 raw_data_1,raw_data_2,raw_data_3... 我得到“raw_data”。我很困惑,因为 print(raw_data) 实际上正确打印了“raw_data_1-3”(但只有“raw_data”实际上包含任何信息)。

感谢您对我的代码的任何帮助或批评,以使其更高效。

0 投票
5 回答
92190 浏览

r - 如何阅读标题但也跳过行 - read.table()?

数据.txt:

编码:

结果:

我希望标题是索引和时间,如下所示:

我怎么做?