我试图读取一个带有引号的csv文件
id, value, other
1, "("a"="b", "b"="c", "c"="d")", 2
2, "("a"="b", "b"="c", "c"="d")", 3
阅读csv删除了引号,因此我最终得到了
id, value, other
1, (a=b, b=c, c=d), 2
2, (a=b, b=c, c=d), 3
有人知道我如何保留引号吗?
也许这有助于:
library(readr)
# simulating your data
id <- c(1,2)
value <- c('"("a"="b", "b"="c", "c"="d")"', '"("a"="b", "b"="c", "c"="d")"')
other <- c(2,3)
# creating a dataframe
df <- data.frame(id, value, other)
# creating a csv file
write.csv(df,"mydata.csv", row.names = FALSE)
# Import csv dataset
mydata <- read_csv("mydata.csv")
# View data
View(mydata)
一种方法是改变分隔符。
我们可以将分隔符更改为其他分隔符,并使用fread。
data.table::fread(gsub(',(?![^\\(]*\\))', ';', text, perl = TRUE), quote = '')
# id value other
#1: 1 "("a"="b", "b"="c", "c"="d")" 2
#2: 2 "("a"="b", "b"="c", "c"="d")" 3
gsub
的正则表达式已从这里获取,以替换()
之间不出现的逗号。
数据
text = 'id, value, other
1, "("a"="b", "b"="c", "c"="d")", 2
2, "("a"="b", "b"="c", "c"="d")", 3'
如果你默认使用Markdown编辑器编辑文档,但是文字中存在一些 Markdown 的保留字。 例如: 表中中出现 | 需要输入 ` 需要成对的出现 [ ] >和<也是需要转义后才能显示。 等等,一些特殊需求。可以通过unicode编码来解决。 将要输入的字符进行转义,之后使用转义字符即可。 常见转义字符: 原字符 转义字符 | | ` ` ] ] [ [ > > < < @ @ #
全部的 我正在处理一个看似简单的案例,但它提出了一些设计挑战: 有一个带有客户端的本地参与者系统,它可以连接到运行大部分业务逻辑的远程系统。 远程系统将有一个固定的IP地址、端口等-因此,可以使用context.actorSelection(uri)策略来获取ActorRef,以获取当前参与者(或路由器后面的一组路由器)的化身。 作为服务器的远程系统不应该知道客户端的位置。 鉴于此,将消息从客户端
我想从CSV文件中删除包含错误日期的行。在这个过程中,CSV文件应该保留头行。所有这些我都希望使用Java8 Streams来执行。 一开始我想到了这个:
问题内容: 我想使用在NodeJS 0.12中添加的方法,但仍然在运行Node脚本的控制台窗口中具有输出。 例如,如果我运行具有以下行的NodeJS脚本,我想在控制台中看到rsync命令“ live”的完整输出: 我知道这会返回命令的输出,执行后我可以将其输出到控制台,但是这样我就没有“实时”输出了…… 问题答案: 您可以根据需要将父级的stdio传递给子进程:
用户提交表单后如何保留他们的输入? 例如: 如果用户键入 fname 和 lname,是的,它会回显出来。但是我想在输入类型中保留他们的名字和姓氏,这样如果表单很长,用户就不需要再次填写。
问题内容: 我正在制作一个bash脚本,该脚本将打印并将复杂的参数传递给另一个外部程序。 我该如何打印原始参数: 使用并删除可能引起不良结果的单引号。我的脚本不需要解析每个参数。我只需要打印/记录参数字符串,然后将其确切地传递给另一个程序。 我知道我可以使用类似的东西来避免引号, 但是我不能保证用户会这样做。 问题答案: 在将参数传递到脚本之前,引号已被删除,因此保留它们为时已晚。您可以做的是在将