使用 data.table::fwrite() 写入 .txt 文件 — is.list(x) 不为 TRUE

2024-06-28

我试图替换基本 R 函数write.table() with data.table::fwrite()加快写入速度,但该函数抱怨说is.list(x) is not TRUE.

我提供的输入有什么问题fwrite()期望,但是write.table()默默接受?

sample_txt <- c("Obligationenrecht\n4 Die Bankenkommission kann unter den Voraussetzungen von Absatz 2 die\nAnwendung der vom Bundesrat anerkannten Standards zur Rechnungslegung im\nBereich der Banken einschränken.\n9. Börsengesetz vom 24. März 199530\nArt. 16          Rechnungslegung\n1 Die Bestimmungen des Bankengesetzes vom 8. November 193431 über die\nRechnungslegung für Banken gelten sinngemäss auch für Effektenhändler.\n2 Der Bundesrat kann von den Bestimmungen nach Absatz 1 abweichen, wenn")

write.table(
  sample_txt,
  file = here::here("test.txt"),
  sep = "\t",
  row.names = FALSE,
  col.names = FALSE
)

data.table::fwrite(
  sample_txt,
  file = here::here("test.txt"),
  sep = ";",
  col.names = FALSE,
  row.names = FALSE
)
#> Error in data.table::fwrite(sample_txt, file = here::here("test.txt"), : is.list(x) is not TRUE

Created on 2019-06-17 by the reprex package https://reprex.tidyverse.org (v0.3.0)


感谢@s.brunel 和@Roland,这里有两个可行的解决方案:

sample_txt <- c("Obligationenrecht\n4 Die Bankenkommission kann unter den Voraussetzungen von Absatz 2 die\nAnwendung der vom Bundesrat anerkannten Standards zur Rechnungslegung im\nBereich der Banken einschränken.\n9. Börsengesetz vom 24. März 199530\nArt. 16          Rechnungslegung\n1 Die Bestimmungen des Bankengesetzes vom 8. November 193431 über die\nRechnungslegung für Banken gelten sinngemäss auch für Effektenhändler.\n2 Der Bundesrat kann von den Bestimmungen nach Absatz 1 abweichen, wenn")

# solution 1 
data.table::fwrite(
  x = data.table::data.table(sample_txt),
  file = here::here("test.txt"),
  sep = ";",
  col.names = FALSE,
  row.names = FALSE
)

# solution 2 

data.table::fwrite(
  x = list(sample_txt),
  file = here::here("test.txt"),
  sep = ";",
  col.names = FALSE,
  row.names = FALSE
)

Created on 2019-06-17 by the reprex package https://reprex.tidyverse.org (v0.3.0)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 data.table::fwrite() 写入 .txt 文件 — is.list(x) 不为 TRUE 的相关文章

  • 将最新的 R 安装路径从注册表添加到 PATH windows 7/8/10

    嗨 我是 Windows 批处理新手 我想向打电话的同事分发一个 runMe bat 文件Rscript myRfile R处理一些数据文件 但众所周知 我的同事在不同地方安装了 R 我不能指望他们知道如何将 Rscript 添加到 PAT
  • 在 R 中组合/合并列

    我可能在这个问题上遗漏了一些很容易的东西 我在任何地方都找不到正确的答案 我真的需要继续前进 所以我过度简化了我的数据 eventID lt c 2 4 Time lt c 09 32 09 43 df1 lt data frame eve
  • R 中的离散化

    有谁知道有一个包可以实现连续变量离散化的监督学习算法 dprep 包包含类似的功能 但该包已被弃用 有任何想法吗 感谢您的帮助 您仍然可以使用dprep包 但你必须从源代码安装它 我刚刚测试过 它运行良好 不过 您或许可以看看离散化 htt
  • 在 R 中调用“boot”时没有数据

    我有一个包含很多列的数据框 第一列包含 系统 1 系统 2 等类别 第二列包含代表 0 和 1 的数字 请看下面 例如 SYSTEM Q1 Q2 S1 0 1 S1 1 0 S2 1 1 S2 0 0 S2 1 1 我在 R 中有这段代码来
  • 在 R 中,将一列值与所有其他列进行比较

    我对 R 非常陌生 我有一个问题对于这里的专家来说可能非常简单 假设我有一个表 sales 其中包含 4 个客户 ID 123 126 和 4 个产品 A B C D ID A B C D 123 0 1 1 0 124 1 1 0 0 1
  • 如何为 R 中接下来的 2 个单元格复制相同的列值[重复]

    这个问题在这里已经有答案了 我正在尝试使用 R 为列中接下来的 2 个单元格复制相同的列值 我有以下形式的数据框 Time World Cate Data 1994 Africa A 12 1994 B 17 1994 C 22 1994
  • R 中带有自定义字段类的参考类?

    我想在另一个引用类中使用自定义引用类 但此代码失败 nameClass lt setRefClass nameClass fields list first character last character methods list ini
  • 在 R 中提取栅格的最快方法(提高我的可重现代码的时间)

    我想知道我是否已最大化提取栅格中某个点周围缓冲区域平均值的速度 本地的性能可以进一步提高吗 I use parallel mclapply已经 我知道我可以通过在集群上设置和运行它来获得进一步的收益 使用集群或获得更多的CPU不是我正在寻找
  • 数据框中的动物园滞后差异

    我想将滞后差异的结果放回到我的数据框中 这意味着我将拥有针对不同滞后的领先 NA 我在用 new df lag1 lt diff new df Close lag 1 differences 1 arithmetic TRUE na pad
  • 如何在 R 中的 SQLDF 中连接字符串

    我正在寻找一个在 R 中的 SQLDF 中连接两个字符串的函数 其工作原理类似于 Paste 但找不到任何函数 这样做的原因是我想在连接两个数据框时连接两列 我有时想使用 sqldf 而不是使用 merge 进行连接 然后使用 Paste
  • 如何在其他脚本中包含(源)R 脚本

    我创建了一个实用程序 R 脚本 util R 我想从项目中的其他脚本中使用它 确保此脚本定义的函数可在我的其他脚本中运行的正确方法是什么 我正在寻找类似的东西require函数 仅在尚未加载的情况下加载包 我不想打电话source util
  • 如何使用核心 R 操作/访问“dist”类实例的元素?

    R 中的基本 公共类称为 dist 并且是对称距离矩阵的相对有效的表示 不像一个 matrix 对象 但是 似乎不支持操纵 dist 使用索引对实例 操作员 例如 以下代码不返回任何内容 NULL 或出现错误 First create an
  • 每行和每列都有条件的随机值(0 和 1)[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 您好 我正在尝试在 R 中创建一个 600 行和 18 列的数据框 但是 每行 18 列中只能随机有 3 个 1 例如 A E F 列
  • 张量流:RStudio 中的 [NOT FOUND] 错误

    我尝试在中运行以下代码RStudio library tensorflow x data lt runif 100 min 0 max 1 y data lt x data 0 1 0 3 W lt tf Variable tf rando
  • 在 RStudio 中自动格式化 R 代码

    RStudio 中是否有自动格式化代码的可能性 I found this https stackoverflow com questions 3017877 tool to auto format r code 但未与RStudio连接 还
  • R:根据排名重新排列数据框的列

    我有以下数据框 df1 Type CA AR OR alpha 2 3 5 beta 1 5 6 gamma 6 2 8 delta 8 1 9 Total 17 11 28 我想根据 总计 行重新排序该数据框 使其按降序排列 生成的数据框
  • R - 数据框列中唯一值的数量

    对于数据框df 我需要找到的唯一值some col 尝试了以下方法 length unique df some col 但这并没有给出预期的结果 然而length unique some vector 对向量进行处理并给出预期结果 创建 d
  • 如何引用基于 data.frame 中的变量的列表?

    我有一张简单的桌子emp id and job code 我想返回正确的payout基于job code 我已经用嵌套的 ifelse 来解决这个问题 但是如果我有更多怎么办job code s library dplyr set seed
  • 在 R 中创建多维 NetCDF

    我正在尝试使用 R 包创建多维 NetCDF 文件ncdf http cran r project org web packages ncdf index html 我正在对一组 1500 个点进行气候日常观测 每个点的观测数量约为 182
  • update() 具有局部协变量的函数内的模型

    我需要从函数内部更新回归模型 理想情况下 该函数应该适用于任何类型的模型 lm glm multinom clm 更准确地说 我需要添加函数内部定义的一个或多个协变量 这是一个例子 MyUpdate lt function model ra

随机推荐