ヘッダー付きのマトリックスがあり、マトリックスの列ヘッダーの最初の位置に「遺伝子」という単語を追加し、基本的にその単語を列ヘッダーの先頭に付けたいと思います。
ここに私がこれまでに持っているものがあります: Rに行列を入力し、
matrix_a <- read.table(args[1], sep='\t', header=T, row.names=1);
heatmap.2 を使用して、そのマトリックスからヒートマップを生成します。次に、carpet 変数を使用して、対応するヒートマップのデータを抽出します。
ヒートマップの生成に使用されるコードは次のとおりです。
result <- heatmap.2(mtscaled, Rowv=T, scale='none', dendrogram="row", symm = T, col=bluered(16), breaks = my.breaks)
ここでは、元のマトリックスを heatmap.2 に渡した後、クラスター化されたマトリックスの値を抽出しています。
new_matrix <- result$carpet
old_name <- colnames(new_matrix)
ここでは、「遺伝子」という名前を列名に付けようとしています
old_name <- cat("genes",old_name)
colnames(new_matrix) <- old_name;
write.table(new_matrix, file="data_result3.txt",sep = " \t",col.names = T, row.names = T);
次を使用して「遺伝子」をヘッダーに添付しようとすると:
old_name <- cat("genes",old_name)
ヘッダーは画面に正しく出力されますが、結果ファイルを調べるとベクトル番号が出力されます。
「V1」「V2」「V3」「V4」「V5」「V6」
代わりに、結果を次のようにしたいと思います。
遺伝子 Pacs-11 Pacs-2 PC06E7.3 PC49C3.3 Pceh-60 PF52C6.12
このようにして、遺伝子はマトリックス ヘッダーの残りの部分よりも前に表示されます。
ここに私のデータセットへのリンクがあります: 完全なデータセット
dputの出力を実行した後の dataSet は次のとおりです。dput(head(new_matrix))