大変お世話になりました。
はい。より良い例を提供する必要があります。
これが私の入力ファイルです(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)前にも追加してみました|
これらの方法はすべてうまくいかなかったので、以下の回答を誤解したのではないかと思います. よろしければ、さらにご案内をいただけますでしょうか。
よろしく、キャサリン
------元の質問--------------------------
strsplit
R のコマンドを使用して、シンボルに基づいてセルを分離したいと考えています"|"
。
ただし、次のエラー メッセージが表示されます。
Error in strsplit(df[x, 3], "|") : non-character argument.
このエラー メッセージはどういう意味ですか?
このエラーを修正するにはどうすればよいですか?
この Web サイトの前の質問に記載されているコマンド ラインを使用していました。
> 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)
+ })
+ )
+ )
+ )