在 R fread shell 命令中加入分隔符

Join separator in R fread shell command

我有两个 .txt 文件,我想使用 R data.table fread 函数的 shell 命令功能作为预处理步骤加入导入 R。这两个文件是:

foods.txt:

ID|FOOD
100000853384|Cheese
100003735682|Potato
100006367485|Apple
100007267644|Beef

food_types.txt:

ID|TYPE
100000853384|Fat
100003735682|Carbohydrate
100006367485|Fruit
100007267644|Protein

我试过这个代码

library(data.table)
foods <- fread(cmd = paste("join -t '|' food_types.txt foods.txt"))

但是它 returns 一个错误说

''' is not recognized as an internal or external command,
operable program or batch file.

但是,如果我将分隔符更改为逗号并使用

,连接将正常工作
foods <- fread(cmd = paste("join -t ',' food_types.txt foods.txt"))

如何让连接与竖线分隔符一起使用?我在 Windows 10 Pro 上使用 R 版本 4.1.3。

你能调换双引号和单引号吗?

fread(cmd = paste('join -t "|" food_types.txt foods.txt'))

输出:

             ID         TYPE\r   FOOD
1: 100000853384          Fat\r Cheese
2: 100003735682 Carbohydrate\r Potato
3: 100006367485        Fruit\r  Apple
4: 100007267644        Protein   Beef