将每个成员限制在一个r数组中

时间:2014-12-02 00:40:00

标签: arrays r vector limit

我是R的新手,我有损失数据:

losses=c(25,250,5,17,2,195,12,8,75,5,50,1);

如何限制列表中的每个成员150?即如何为列表中的每个成员执行min(150,x)

然后我想把所有损失限制在'保险额'阵列:

aoi=c(150,250,100,125,300,200,80,250,100,350,500,120) 

1 个答案:

答案 0 :(得分:2)

请参阅?pmin或平行最小值计算:

pmin(150,losses)
#[1]  25 150   5  17   2 150  12   8  75   5  50   1

如果您需要多次执行此操作,最好在data.framelist中收集变量。 E.g:

dat <- data.frame(losses,aoi)
data.frame(Map(pmin,dat,150))

#   losses aoi
#1      25 150
#2     150 150
#3       5 100
#etc...