我想创建多维数组,沿着其他维度重复向量。例如。对于行向量a
和b
,我可以为A
,A(:,n,m,k)=a
,n
和m
创建k
B
同样B(n,:,m,k)
n
m
,k
,A=repmat(a', [1 length(b) length(c) length(d)]);
B=repmat(b, [length(a) 1 length(c) length(d)]);
,如下所示:
var xmlhttp;
window.onload = function(){
setupAjaxObject();
getEventdataFromDB();
}
function setupAjaxObject()
{
if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest();
}else{
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState == 4){
if(xmlhttp.status == 200){
var dbData = xmlhttp.responseText;
if(dbData != ''){
processEvents(dbData); //function for data processing
}
}
getEventdataFromDB(); //run the next request
}
}
}
function getEventdataFromDB(){
xmlhttp.open('GET','getEvents.php?dataRequest=true',true);
xmlhttp.send();
}
如何为C和D做相同的操作?即这样C(n,m,:,k)= c其中c是行向量。
答案 0 :(得分:1)
我自己解决了,可以使用置换功能,例如:
B=repmat(b, [length(x) 1 length(a) length(c)]);
B=permute(B,[1 3 2 4]);