2015-09-18 14 views
5
M = matrix(1:9,3,3) 
colnames(M)=c('a','b','c') 

行列名が「a」、「b」、「c」の行列Mがあるとします。そして、私は、名前を削除したいのでMRの行列から列名を削除するには?

M [,1] [,2] [,3] 
[1,] 1 4 7 
[2,] 2 5 8 
[3,] 3 6 9 

よりもむしろ

 a  b c 
[1,] 1 4 7 
[2,] 2 5 8 
[3,] 3 6 9 

がどのように私はこれを行うかということ?

+0

を使用し、私はNA NA NAではなく、[1]を得る[2] [3] – robertevansanders

+0

コードはあなたのために働かないのですか?それは私のためにうまく動作します...私は無名のものに割り当てられたトンのトンを持つ行列から取得しようとしています。その理由は複雑です。これは私が考えるとかなり簡単なことです... – robertevansanders

答えて

7

あなたはあなたの例を使用して

colnames(M) <- NULL 

を試すことができます:あなたのデータではなく、マトリックスのdata.frameに格納されている場合

> M 
#  a b c 
#[1,] 1 4 7 
#[2,] 2 5 8 
#[3,] 3 6 9 
> colnames(M) <- NULL 
> M 
#  [,1] [,2] [,3] 
#[1,] 1 4 7 
#[2,] 2 5 8 
#[3,] 3 6 9 

しかし、これは動作しません。 ?data.frameで説明したように:

列名が空であるべきであり、あなたのデータはdata.frameとして格納されている場合は、空の名前を使用しようとする試みは、サポートされていない結果

を持つことになります(これが可能class(my_data)でチェックした場合)、M <- as.matrix(my_data)の行列に変換しようとする可能性があります。お役に立てれば。

1

あなたは行名を削除したい場合は、私が所望の出力を得ることはありませんrow.names()機能

>M 
     a b c 
1[1,] 1 4 7 
2[2,] 2 5 8 
3[3,] 3 6 9 

>row.names(M)<- NULL ; colnames(M)<- NULL 
>M 

    [,1] [,2] [,3] 
[1,] 1 4 7 
[2,] 2 5 8 
[3,] 3 6 9 
関連する問題