2016-07-21 5 views
0

19のdata.frameが19個あります。各data.frame行には観測が含まれ、各列には変数が含まれています。私は時系列を得るために19のdata.frameのそれぞれを一列に変換したいと思います。ベクトルでdata.frameを変換することは可能ですか?R

obs <- LETTERS[1:3] 
Var1 <- (2:4) 
Var2 <- (9:7) 

April2014 <- data.frame(obs, Var1, Var2) 

TimeSerie.April2014 <- data.frame(OBS = "2014/04/01", 
            AVar1 = April2014[1,2], 
            AVar2 = April2014[1,3], 
            BVar1 = April2014[2,2], 
            BVar1 = April2014[2,3], 
            CVar1 = April2014[3,2], 
            CVar2 = April2014[3,3]) 

これは単純な例ですが、私はTimeSeries.April2014にApril2014から行きたいので、私は時系列を得るために、19時間ごとに参加することができます。

P.S.申し訳ありませんが、私の質問の原油のフォームは、それは私の最初のスタックオーバーフローの質問です。製剤に関するヒントがあれば、それを分かち合うことをためらってください。各データフレームdatについては

+1

あなたはワットの出力サンプルを表示することができますしたいですデータ? –

答えて

1

、あなたが欲しいベクトルを取得するために

as.numeric(t(dat[,-1])) 

を使用することができます。 19のデータフレームがある場合は、これを19回繰り返す必要があります。すべてのデータフレームが大規模なリストlarge_listにある場合、sapplyを使用すると、あなたのためのすべての作業を行います。

t(sapply(large_list, function (dat) as.numeric(t(dat[,-1])))) 
+0

ありがとうございました –

1

OBSの文字の必要性はありますか?あなただけの行の数字を読み、長いベクトルにそれらを一緒に入れたい場合は、これは大きなデータセットにもスケールの短い答えである可能性があります

Var1 <- (2:4) 
Var2 <- (9:7) 
April2014 <- data.frame(Var1, Var2) 

result <- unlist(data.frame(t(April2014))) 
print(result) 
関連する問題