У меня есть две проблемы в Mathematica и хотят, чтобы сделать их в MATLAB:MATLAB матрицы и откинуть список
measure := RandomReal[] - 0.5
m = 10000;
data = Table[measure, {m}];
fig1 = ListPlot[data, PlotStyle -> {PointSize[0.015]}]
Histogram[data]
MATLAB:
measure [email protected] (m) rand(1,m)-0.5
m=10000;
for i=1:m
data(:,i)=measure(:,i);
end
figure(1)
plot(data,'b.','MarkerSize',0.015)
figure(2)
hist(data)
И это дает мне:
? ?? Произошла следующая ошибка преобразования из function_handle в двойной: Ошибка использования ==> двойной
Если я сделать:
measure =rand()-0.5
m=10000;
data=rand(1,m)-0.5
тогда я получить правильные результаты в Plot1, но в участке 2, у = ось неверна.
Кроме того, если у меня есть это в Mathematica:
steps[m_] := Table[2 RandomInteger[] - 1, {m}]
steps[20]
Walk1D[n_] := FoldList[Plus, 0, steps[n]]
LastPoint1D[n_] := Fold[Plus, 0, steps[n]]
ListPlot[Walk1D[10^4]]
Я сделал это:
steps = @ (m) 2*randint(1,m,2)-1;
steps(20)
Walk1D [email protected] (n) cumsum(0:steps(n)) --> this is ok i think
LastPointold1D= @ (n) cumsum(0:steps(n))
LastPoint1D= @ (n) LastPointold1D(end)-->but here i now i must take the last "folding"
Walk1D(10)
LastPoint1D(10000)
plot(Walk1D(10000),'b')
и я получаю пустую матрицу и не сюжет ..
Пожалуйста, опишите, что вы на самом деле хотите сделать. – InsertNickHere
Я хочу, чтобы выше работали, но, как я уже сказал, они этого не делают. – George