2 つのデータフレーム (DfA と DfB) があります。各データフレームには、種、タイプ、地域の 3 つの因子変数があります。DfA にも数値列があり、これを使用して、共有属性に基づいて DfB の新しい列の数値を推定したいと考えています。
種、タイプ、および地域を要求し、それらの属性を使用して DfA のサブセットを作成し、サブセットでアルゴリズムを実行して新しい値を推定する関数があります。関数を実行し、テストとして手動で値を指定すると、正常に動作します。
DfB のすべての因子レベルと組み合わせが DfA で一致する因子を持っている場合、関数は mapply で正常に機能します。しかし、DfB の行に DfA に存在しない因子水準が含まれている場合は、エラーが発生します (因子の水準セットが異なります)。例: DfA に地域 A、B、C のデータが含まれ、DfB に地域 A、B、C、D のデータが含まれている場合、mapply はエラーを返します。領域 D の行を削除すると、mapply 関数が機能します。
行に関数を不可能にする因子レベルが含まれている場合、それをスキップするか、代わりに NA を入れて、関数が機能する行で関数を実行するように指定するにはどうすればよいですか?