Are double “” and single '' quotes (always) interchangeable in R?

只谈情不闲聊 提交于 2019-12-04 10:23:16

问题


This is perhaps rather a minor question...

but just a moment ago I was looking through some code I had written and noticed that I tend to just use ="something" and ='something_else' completely interchangeably, often in the same function.

So my question is: Is there R code in which using one or other (single or double quotes) has different behaviour? Or are they totally synonymous?


回答1:


> print(""hi"")
Error: unexpected symbol in "print(""hi"
> print("'hi'")
[1] "'hi'"
> print("hi")
[1] "hi"



回答2:


According to http://stat.ethz.ch/R-manual/R-patched/library/base/html/Quotes.html, "[s]ingle and double quotes delimit character constants. They can be used interchangeably but double quotes are preferred (and character constants are printed using double quotes), so single quotes are normally only used to delimit character constants containing double quotes."




回答3:


Just for curiosity, there is a further explaination in R-help mailing list for Why double quote is preferred in R:

To avoid confusion for those who are accustomed to programming in the C family of languages (C, C++, Java), where there is a difference in the meaning of single quotes and double quotes. A C programmer reads 'a' as a single character and "a" as a character string consisting of the letter 'a' followed by a null character to terminate the string.

In R there is no character data type, there are only character strings. For consistency with other languages it helps if character strings are delimited by double quotes. The single quote version in R is for convenience.

(Since) On most keyboards you don't need to use the shift key to type a single quote but you do need the shift for a double quote.



来源:https://stackoverflow.com/questions/20572436/are-double-and-single-quotes-always-interchangeable-in-r

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!