2016-11-21 5 views
-1

私は2つのリストを持っています。 (リスト1)最初はそうのような13個の変数、240人の観察とデータフレームであり、各々が126の項目から成る:異なるデータ構造を持つリストを差し引く

List1   Large List (126 elements, 3.2 Mb) 
:'data.frame': 240 obs. of 13 variables 
..$X1: num [1:240] 1.5 2.3 6.4 3.3 ... 
..$X2: num [1:240] 3.8 9.4 0.4 6.4 ... 
................................................. 
:'data.frame': 240 obs. of 13 variables 
..$X1: num [1:240] 2.6 0.9 0.5 3.7 ... 
..$X2: num [1:240] 4.9 5.5 5.6 3.1 ... 
................................................. 

LIST2はまた、126個の項目で構成され、この時間は、13個の変数のわずか1観察であります次のようになります。

List2   List of 126 
: num[1, 1:13] 5.5 4.2 6.3 9.2 ... 
: num[1, 1:13] 2.1 1.4 7.7 3.9 ... 
................................................. 

List1からList2を減算しようとしています。つまり、List1の各要素の240行すべてから、List2の各要素の13個の数値を減算したいとします。これにより、リストに126個の新しい項目が表示され、240個の13個の変数が観測されます。

私が試してみました:

ANOM=Map(function(x,y) x-y, List1, List2) 

、これが作業を行いますが、それはのList1の正しい列からLIST2から正しい列を削除しないように、正しい結果を与えるものではありません。ここで間違っているかもしれない簡単なことはありますか?

+0

は、私はあなたがこのサイトに役立つ方法を再現可能な例について聞いたと思いますが、ここでは別の参照は、とにかくです。http://stackoverflow.com/questions/5963269/how-to-make-a-great- r-reproducible-example/28481250#28481250 – Frank

+0

お詫び申し上げます。私はこの質問を可能な限り明確にしようとしましたが、それは困難でした。私は考えている質問を削除します。 –

+0

私は質問がまともなものだと思いますが、あなたがList1_からList2を受け取ったことを明確にする必要があります。あなたは 'list1 [[1]] - List2 [[0]]、List1 [[2]] - List2 [[2]]、...、List1 [[126]] - List2 [ 126]]) '?または 'List2 List1 [1] - row ... 'の各行について?ダミーデータも共有してください。 – Abdou

答えて

0

これが動作するかどうかを確認しますか?

list3=list() 
for(i in 1:length(list1))list3[[i]]=list1[[i]]-rep(1,240)%*%list2[[i]] 
str(list3) 
+0

コメントをいただきありがとうございます - 残念ながら、これは私の例で概説したマップ関数と同じ出力を正確に返します。 –

+0

編集を試して、それが機能するかどうか確認してください。 – Robert

+0

ありがとう@ロバーツ - その解決策があります。リストを等しく構造化されたデータフレームで構成するには、2番目のリストを繰り返す必要があります。 –

関連する問題