read.csv()
オプションを使用してファイルを読み込むとheader=T
、ヘッダーが奇妙な(ただし予測可能な)方法で変更されます。読み取る必要のあるヘッダー名は、たとえば次のように"P(A<B)"
なります。"P.A.B."
> # when header=F:
> myfile1 <- read.csv(fullpath,sep="\t",header=F,nrow=3)
> myfile1
V1 V2 V3
1 ID Name P(A>B)
2 AB001 Alice 0.997
3 AB002 Bob 0.497
>
> # When header=T:
> myfile2 <- read.csv(fullpath,sep="\t",header=T,nrow=3)
> myfile2
ID Name P.A.B.
1 AB001 Alice 0.997
2 AB002 Bob 0.497
3 AB003 Charles 0.732
私はそれをこのように修正しようとしましたが、うまくいきませんでした:
> names(myfile2) <- myfile1[1,]
> myfile2
3 3 3
1 AB001 Alice 0.997
2 AB002 Bob 0.497
3 AB003 Charles 0.732
そこで、任意のベクトルを取り、ベクトルを返すsub()
関数を作成しようとしましたが、実際にはどこにも到達せず、この問題を必要以上に複雑にしているのではないかと思い始めました。"arbitrary.lengths.here."
"arbitrary(lengths>here)"
このヘッダーの問題にどのように対処しますか?私は正しい方向に進んでいましたsub()
か?