私はcsv形式で次のテーブルを持っています:
csv 形式のテーブルに次の遺伝子情報があります。
1 3 1 2 2 3
1415670_at 1 365.1 293.4 288.9 394.5 312 381.6
1415671_at 2 556.1 584.2 567.8 592.8 471.6 513.1
1415672_at 3 1048.3 763.1 1074.9 852.3 826.1 898.3
1415673_at 4 60.8 51.7 51.6 224 248.4 150.7
1415674_at 5 129.1 107.2 230.4 175.5 250.5 172.4
ご覧のとおり、1、2、および 3 のラベルが付いた列がいくつかあります。Excel で 1 および 2 とは異なる列を削除する VB スクリプトを作成しました。私が持っている質問は、Rのみを使用してそれを行うにはどうすればよいですか? 私の結果のテーブルは次のようになります。
1 1 2 2
1415670_at 1 365.1 293.4 394.5 312
1415671_at 2 556.1 584.2 592.8 471.6
1415672_at 3 1048.3 763.1 852.3 826.1
1415673_at 4 60.8 51.7 224 248.4
1415674_at 5 129.1 107.2 175.5 250.5
ちなみに、これは単なる例です。他の列に 4、5、6 というラベルを付けることができますが、1 と 2 というラベルの付いた列のみを保持したいと考えています。
投稿されたソリューションを試しました。つまり、次を使用します。
m<-read.csv("test1.csv")
smallerdat <- m[ grep("^X1$|^X2$|X1\\.|X2\\." , names(m) ) ]
ここで、m は csv 形式のテーブルですが、得られた結果は次のとおりです。
X1 X1.1 X2 X2.2
365.1 293.4 394.5 312
556.1 584.2 592.8 471.6
1048.3 763.1 852.3 826.1
60.8 51.7 224 248.4
129.1 107.2 175.5 250.5
したがって、必要な最初の2つの列を削除しています。それらの列を削除しない方法は? また、元の形式を維持する方法、ヘッダーの 1 と 2 のみを意味し、それらの X ではありません