我是matlab的新手。我有一个分类输入预测器(X)和一组过去的结果(Y,二进制)。我想通过以下方法将其转换为数值变量。对于每个类别,计算 Y 的平均值并将该值替换为平均值。例如:
X Y X'
1 1 1
2 0 0
3 1 0.5
1 1 1
2 0 0
3 0 0.5
请帮忙。
我是matlab的新手。我有一个分类输入预测器(X)和一组过去的结果(Y,二进制)。我想通过以下方法将其转换为数值变量。对于每个类别,计算 Y 的平均值并将该值替换为平均值。例如:
X Y X'
1 1 1
2 0 0
3 1 0.5
1 1 1
2 0 0
3 0 0.5
请帮忙。
you are looking for accumarray
with mean
function with Y
as vals and X
as subs
Xprime = accumarray( X, Y, [], @mean );
Xprime = Xptime( X );