非常感謝您的幫助。strsplit符號「|」導致R中的非字符錯誤信息
是的。我應該提供一個更好的例子。
這裏是我的輸入文件(3columns.csv)
Patients Markers Studies
1 AA EXX 1111
2 BB ABCB1 2222|3333|5555|6666
3 CC CCAN 4444|5555
4 DD ABCB1 6666
這裏是我的輸出文件
Patients Markers Studies
1 AA EXX 1111
2 BB ABCB1 2222
2 BB ABCB1 3333
2 BB ABCB1 5555
2 BB ABCB1 6666
3 CC CCAN 4444
3 CC CCAN 5555
4 DD ABCB1 6666
(1)根據初級講座的命令,我已經取得了一些變化到第6行,如下所示
sapply(unlist(strsplit(as.character(df[x,3]),"\\|")),c,df[x,1:2],USE.NAMES=FALSE)
(2)我試圖調出DF文件作爲
df <- read.csv(file="3columns.csv",header=TRUE,stringsAsFactors=FALSE)
(3)我也嘗試過|
添加\\
所有這些方法都沒有工作,所以我懷疑我可能誤解了下面的答覆。你能介意給我更多的指導嗎?
最好的問候, 凱瑟琳
------原來的問題--------------------------
我想使用R的strsplit
命令來分離基於符號"|"
的單元格。
但是,出現錯誤消息:
Error in strsplit(df[x, 3], "|") : non-character argument.
這個錯誤是什麼消息呢?
我該如何糾正這個錯誤?
我使用本網站前一個問題中列出的命令行:
> write.csv(df, file="3columns.csv")
> as.data.frame(
+ t(
+ do.call(cbind,
+ lapply(1:nrow(df),function(x){
+ sapply(unlist(strsplit(df[x,3],"|")),c,df[x,1:2],USE.NAMES=FALSE)
+ })
+)
+)
+)
這不是一個論壇。這是一個Q/A網站。你應該問一個問題和人們的答案。如果你得到的信息需要澄清,那麼你應該編輯你的問題是一個更好的問題。沒有理智的問題是以「非常感謝你的幫助,是的,我應該提供一個更好的例子」。如果您認爲您需要更好的示例,請編輯該問題並添加更好的示例。 – 2011-04-08 19:47:05
錯誤消息告訴你,strsplit的內容不是一個字符向量。檢查它是什麼,並使其成爲角色矢量。如果有疑問,請閱讀幫助文件。 – 2011-04-08 19:51:01