2017-02-23 1 views
1

私の質問をここに提出する前に、同様の質問を探しましたが、私は同じような結果を見つけられませんでした。 私は、行の二つのデータフレームの表は、同じ日付(年)とラインで同じ会社がありますが、各データフレームは、変数を説明し、テーブル内の値は、文字と分類しているがあります。DF1を超えるDF2に基づくデータフレームを同じ行とラインで作成する(特殊条件とのマージ)

(BM) Dataframe 

Name | X1992 | X1993 | X1994 | X1995  
---- | ----- | ----- | ----- | ---- 
xyze | Na | Na | B | B 
zyea | A | B | B | A 
ddfa | Na | Na | D | D 
arer | C | C | A | A 
zaer | Na | A | A | B 
wxcv | A | A | B | A 
lklj | B | D | D | D 
jgie | B | B | C | C 
azer | C | B | C | B 
lmoz | Na | Na | Na | A 
jzea | D | D | D | C 

(Size) Dataframe 

Name | X1992 | X1993 | X1994 | X1995  
---- ----- ----- ----- ---- 
xyze Na  Na  D  C 
zyea B  D  A  A 
ddfa Na  Na  D  C 
arer A  A  C  C 
zaer Na  A  A  D 
wxcv C  B  C  A 
lklj C  C  B  D 
jgie D  B  C  D 
azer B  A  A  B 
lmoz Na  Na  Na  C 
jzea A  D  A  B 

I (:BMの企業「」&サイズ「C」の例)

>A_C 
Name | X1992 | X1993 | X1994 | X1995  
---- ----- ----- ----- ---- 
xyze .  .  .  . 
zyea .  .  .  . 
ddfa .  .  .  . 
arer .  .  .  T 
zaer .  .  T  . 
wxcv T  .  .  . 
lklj .  .  .  . 
jgie .  .  .  . 
azer .  .  .  . 
lmoz .  .  .  T 
jzea .  .  .  . 

この現実と小突起
以下のような結果を持っていると思います。これはここMap

data.frame(Map(function(x,y) x %in% "A" & y %in% "C", BM[-1], Size[-1])) 

に対応する列を比較することによって行うことができる

+0

タイプミスであると仮定されています。 %c( 'A'、 'C​​')、BM [-1]、サイズ[-1(%)の%c( 'A'、 'C​​')&y% ]) ' – akrun

+0

整理されたデータについて[このノート](ftp://cran.r-project.org/pub/R/web/packages/tidyr/vignettes/tidy-data.html)を読むのに役立つかもしれません。 – p0bs

答えて

0

、出力は「BM」の列の要素が「A」である場合にTRUE要素を有する論理列とdata.frameであろうと「サイズ」は「C」です。他のすべての例はFALSE

NOTE次のようになります。ここでは、NaがNAあり、それは例を示すために、 `dput`を使用してください

+1

それはうまくいく、ありがとう。 –

関連する問題