Rで、コメント付きのファイルをcsvとして読み込んでいます
read.data.raw = read.csv(inputfile, sep='\t', header=F, comment.char='')
ファイルは次のようになります。
#comment line 1
data 1<tab>x<tab>y
#comment line 2
data 2<tab>x<tab>y
data 3<tab>x<tab>y
今、私はコメントされていない行を抽出します
comment_ind = grep( '^#.*', read.data.raw[[1]])
read.data = read.data.raw[-comment_ind,]
それは私を残します:
data 1<tab>x<tab>y
data 2<tab>x<tab>y
data 3<tab>x<tab>y
行/列の数を維持する別のスクリプトを使用してこのデータを変更しており、それを元の読み取りデータ (ユーザー コメント付き) に戻し、このようにユーザーに返したいと考えています。
#comment line 1
modified data 1<tab>x<tab>y
#comment line 2
modified data 2<tab>x<tab>y
modified data 3<tab>x<tab>y
read.data で抽出したデータは行名 row.names(read.data) を保持するので、試してみました
original.read.data[as.numeric(row.names(read.data)),] = read.data
しかし、それはうまくいかず、たくさんの NA/s を得ました
何か案は?