r - 使用带有符号链接(symbolic link)文件的 read.csv

标签 r symlink read.csv

我想做什么
我的源文件非常大,我想避免将其复制到其他文件夹中。我决定创建一个指向大文件的符号链接(symbolic link)并想使用 read.csv读入文件。
文件夹结构

  • project1/data/source-file.csv
  • project2/data/alias-to-source-file.csv

  • 出了什么问题
    读取源文件工作正常,但是当我尝试读取符号链接(symbolic link)时,出现以下错误:line 1 appears to contain embedded nulls .
    我知道我可以复制文件并将其放入我的第二个项目的文件夹中,但我想知道是否有使用符号链接(symbolic link)的方法。如果没有,我想知道一种避免在许多项目中复制数据文件的好方法。

    最佳答案

    在我的系统上正确制作时,符号链接(symbolic link)可以工作。

    > read.csv("foo.csv")
      X1 X2 X3
    1  3  4  5
    2  5  6  7
    > system("ln -s foo.csv bar.csv")
    > read.csv("bar.csv")
      X1 X2 X3
    1  3  4  5
    2  5  6  7
    

    错误的符号链接(symbolic link)会产生错误,但我无法复制您的错误:

    符号链接(symbolic link)到不存在的文件:
    > system("ln -s nonsuch.csv baz.csv")
    > read.csv("baz.csv")
    Error in file(file, "rt") : cannot open the connection
    In addition: Warning message:
    In file(file, "rt") : cannot open file 'baz.csv': No such file or directory
    

    链接到现有目录文件夹:
    > system("ln -s / qux.csv")
    > read.csv("qux.csv")
    Error in read.table(file = file, header = header, sep = sep, quote = quote,  : 
      no lines available in input
    

    关于r - 使用带有符号链接(symbolic link)文件的 read.csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39128389/

    相关文章:

    node.js - fs.symlink 给我 ELOOP 错误

    r - 将多个 .csv 文件合并为一个

    r - 如何使用R中包含逗号的值读取csv?

    以 tidyeval 的方式删除列

    python - 使 python 类列表的列表索引成为可能

    r - 仅在连续几天内应用 diff()

    r - 动态贝叶斯网络 - 多元 - 重复事件 - bnstruct R Package

    linux - Bash - 损坏的符号链接(symbolic link)

    CMake:create_symlink 与 ln

    R 中的 read.csv 阅读日期不同