2012-07-23 46 views
0

在R中的write.table()函數中,是否可以提供帶有字符的quote參數以代替標準雙引號(")?write.table()中的quote參數只能使用雙引號嗎?

例如試圖提供單引號'作爲參數:

name sex age height 
1 x1 F 18 162 
2 x2 M 19 170 
3 x3 M 21 178 
4 x4 F 22 166 
5 x5 F 23 165 

write.table('test',data,sep=',',row.names=F,quote="\'") 

它返回:

錯誤write.table( 「測試」,數據,九月= 「」,row.names = F,報價=「\'」): 無效'報價'規格

+2

正如我在下面對一個答案的評論中所說的,write.table'的參數'quote'希望被告知是否在結果文件中打印引號(參見'write.table')。所以這不是在單引號和雙引號之間選擇的正確參數。這就是說,我不知道它會是什麼論點(因爲qmethod似乎也不合適)。 – plannapus 2012-07-23 10:58:15

+2

您可以通過預處理數據框中的字符列來添加所需的引號字符,然後執行'write.table(...,quote = F)',因爲引號已經存在。請參閱'?gsub'獲取插入引號的一種方法。 – 2012-07-23 11:16:58

+0

這有點愚蠢。爲什麼不能write.table有一個引用字符,就像read.table? – Rodrigo 2015-06-23 20:14:28

回答

3

我明白了。

  1. quote=T,每列數據將被雙引號包圍。
  2. quote=F,每列數據不會被雙引號包圍。
  3. quote=vector,如fellowing:

    write.table(文件= '測試',數據,九月= '',row.names = F,報價= C(1,2))

第1列第2列將被雙引號包圍。

+0

但這似乎不能回答你原來的問題。 – 2012-07-23 12:39:46

+1

@CarlWitthoft我認爲彭總結'write.table'參數'quote'在哪裏(s?)他意識到只有'T','F'和'數字'參數被傳遞給這個選項。 – 2012-07-23 12:47:29