我正在从excel文件中读取行并转储到YAML文件,转储后我发现单引号,双引号和纯文本中提到了某些行。
没有任何特殊字符的数据将被创建为纯文本。
具有\ n字符和括号的数据被创建为“此处的数据”
具有特殊字符的数据将创建为“此处的数据”
我正在使用Yaml Dumper创建YAML文件
ggplot(aes(x=Cohort, y=as.numeric(LEN_Dose)), data = dat) +
ylab("Dose Level\n") +
xlab("\nCohort") +
ggtitle("\n") +
scale_y_continuous(breaks = c(5, 10, 15, 25),
label = c("1.2mg/kg\n5mg", "1.2mg/kg\n10mg", "1.8mg/kg\n15mg", "1.8mg/kg\n25mg")) +
scale_fill_manual(values = c("white", "darkred"),
name="Had DLT") +
geom_line(colour="grey20", size=1) +
geom_point(shape=23, size=6, aes(fill=DLT), stroke=1.1, colour="grey20") + # 21 for circles
theme_classic() +
theme(legend.box.margin=margin(c(0,0,0,-10))) +
expand_limits(y=c(5,25))
如何将所有数据表示为单引号position = position_jitter
?
答案 0 :(得分:0)
当可以表示标量时,可以强制转储程序使用单引号
通过提供public static MyApplication get() {
if(sInstance == null){
sInstance = this;
}
return sInstance;
}
参数使用单引号引起来的字符串。
尽管不能保证您获得单引号,但不能使用单引号 双引号具有的转义序列(即,它不像Python)并且 有些值可能仍会使用双引号。
使用default_style="'"
的新API(默认为往返转储):
ruamel.yaml
给出:
import sys
import ruamel.yaml
data = [
"25",
"with an\n embedded newline",
"entry with single quote: (')",
42
]
yaml = ruamel.yaml.YAML()
yaml.default_style = "'"
yaml.dump(data, sys.stdout)
请注意,为了将- '25'
- "with an\n embedded newline"
- 'entry with single quote: ('')'
- !!int '42'
识别为整数,因为
引号,该标量需要标记。同样适用于
YAML可以代表其他特殊类型(浮点型,布尔型等)。
不想确保您转储的所有值都是字符串。
您还可以看到YAML中单引号标量的一种转义机制具有: 因为标量中的单引号加倍。 (如果它已经在 Python字符串,标量末尾将连续有三个单引号。
如果要保持报价一致,则应使用双引号,因为它可以代表所有有效字符。 YAML中的单引号标量可以跨越多行,因此原则上可以嵌入换行符。但是换行符之间对空格有限制。
如果输入数据中包含字符串值和非字符串值的混合,并且不想获取非字符串引用,则必须递归遍历数据结构并替换每个字符串{{1 }}与42
,即
如果您指定x
来区分单引号输入和普通/双/文字/折叠标量,则ruamel.yaml.scalarstring.SingleQuotedScalarString(x)
使用的内部表示形式。