R 在二元函数上使用sapply

R 在二元函数上使用sapply,r,R,我有一个名为l.array的数组列表,我想应用一个函数,指示符结束。指示器接受两个输入,一个数组和一个名称。指示符然后在与名称对应的列中生成一个新向量,其中1对应于某个输入(该输入取决于名称),0对应于所有其他输入。然后用第三个向量计算该向量的加权平均值 如何在sapply中传递指示符函数两个变量?只需写下@James的评论作为回答:如果您在l.array中有第一个输入,而在l.names中有第二个输入(名称列表),您可以使用mapply执行以下操作: mapply(FUN=Indicator,

我有一个名为l.array的数组列表,我想应用一个函数,指示符结束。指示器接受两个输入,一个数组和一个名称。指示符然后在与名称对应的列中生成一个新向量,其中1对应于某个输入(该输入取决于名称),0对应于所有其他输入。然后用第三个向量计算该向量的加权平均值


如何在sapply中传递指示符函数两个变量?

只需写下@James的评论作为回答:如果您在
l.array
中有第一个输入,而在
l.names
中有第二个输入(名称列表),您可以使用
mapply
执行以下操作:

mapply(FUN=Indicator, l.array, l.names)

我遇到的主要问题是我只有一个名字。但我忘了,如果向量的长度是另一个向量长度的一个因子,它会重复,所以现在一切都解决了。谢谢