私は多くのグーグルでやったことがありますが、私の問題は満足のいく解決策が見つかりませんでした。最初の行はヘッダーですRの多次元グループデータを読むR
Tag v1 v2 v3 A 1 2 3 B 1 2 2 C 5 6 1 A 9 2 7 C 1 0 1
: は、私たちのように、データファイルを持っていると言います。最初の列はグループID(データは3つのグループA、B、Cを持ちます)、他の列は値です。 このファイルをRで読み込み、データにさまざまな機能を適用することができます。 は、例えば、私は列が、私はこのファイルを読みたいと列の意味を取得したい
dt<-read.table(file_name,head=T) #gives warnings
apply(dt,2,mean) #gives NA NA NA
意味ファイルを読み込もうとしましたが、取得しようとしました。次に、3つのグループ(タグA、B、Cによる)でデータを分離し、各グループの平均(列方向)を計算したいと考えています。 apply
がas.matrix
を経由して、配列の最初の引数を(?apply
の詳細セクションの最初の段落に記載されているよう)強制的に変換するので、任意の助け
開始STR(DT)とのデータをチェックしてすることは、その後のようなものを試してみてください= cbind(dt [、1]、data.frame(apply(dt [、2:4]、2、as.numeric))); colnames(dt1)= c( 'Tag'、 'v1'、 'v2'、 'v3')次に、dt [dt $ Tag == A]のようなものを試して、別々のグループを作成したり、 (dt1 $ v1、INDEX = dt1 $ Tag、mean)列方向の関数を取得する – aatrujillob
Rの問題を覚えておいてください。ベクトルが要素の場合、as.numeric(as.character(factor_vector))を使用する必要があります。あなたが望むものを手に入れません。 –
@AndresT - ありがとうございます。ちょっとした誤字。 x <-dt1 [dt1 $ Tag == 'A'、]でなければなりません。しかし、単にxの行番号を取り除く方法が不思議です。これは、新しい値を持っていますが、行番号は1と4 xは、次のとおりです。 タグのV1 V2 V3を
1 A 1 2 3
–