我有一个大小为100x1
的矩阵。我希望迭代地将我的矩阵的每一行值输入到一个函数中。例如,假设L1
代表我的矩阵L
的第1行,L2
第2行,依此类推。说我试图输入L
的每个值的函数用Y
表示。因此,我设法将L1
输入Y
以生成Y1
,将L2
输入Y2
,依此类推。
我真的能帮忙解决如何在matlab中实现这个问题吗?
接受 代码如下:
load('logregdata.mat')
%%Data set X is a series of coordinates in two dimensions and t represents class labels. Data set is for a binary classification problem.
u = rand;
[w1,w2] = meshgrid(-5:0.1:5,-5:0.1:5);
w = zeros(2,1);
w_all = zeros(100,2);
%Probabilistic term of logistic classifier prob_t = 1./(1+exp(-[w1(:) w2(:)]*X'));
L = sum(log(prob_t).*repmat(t',numel(w1),1),2);
L= L + sum (log(1-prob_t).*repmat(1-t',numel(w1),1),2);
u = rand;
y = log(L/u);
提前感谢您的帮助。
答案 0 :(得分:0)
100x1矩阵只是一个向量!所以你可以像这样遍历整个数组:
gholl
答案 1 :(得分:0)
在您的代码中 .
.
.
private List<String> mDataSet = new ArrayList<>(0);
.
.
.
mRecyclerView = (RecyclerView) v.findViewById(R.id.my_recycler_view);
mRecyclerView.setHasFixedSize(true);
mLayoutManager = new LinearLayoutManager(Brain.context);
mRecyclerView.setLayoutManager(mLayoutManager);
mAdapter = new MyAdapter(mDataSet);
mRecyclerView.setAdapter(mAdapter);
.
.
.
mDataSet.add("");
mAdapter.notifyItemInserted(mDataSet.size() - 1);
只是一个标量,因此您可以使用简单的元素操作:
u
会为您提供y = log(L./u);
相同大小的向量y
,以便L