arrays - vectorize data from struct in matlab -
मैंने एक स्ट्रेट बनाया है:
a (1) .x = {[ 1.1 5 8], [3 5 6]}; एक (2) .x = {[3.1 0 4], [9 8 7]}; और मान के साथ एक सरणी प्राप्त करना चाहते हैं [1.1 3.1]।
मैंने कोशिश की है:
ax {1} ( 1,1) कई संरचना तत्वों के लिए क्षेत्र संदर्भ जो अधिक संदर्भ ब्लॉक द्वारा पीछा किया जाता है एक त्रुटि है। कोई भी विचार कृपया?
वाक्यविन्यास त्रुटि बताती है कि आप एकाधिक संरचना तत्वों के अंदर उप-संदर्भ आगे नहीं कर सकते इसलिए, स्पष्ट एक-लाइनर - लूप के लिए बहुत धीमी है- जो स्मृति को बचाता है:
सरणीफन (@ (y) yx {1} (1 ), ए) प्रदर्शन के मुकाबले, लूप-आधारित संस्करण
फ़ंक्शन A = my_extractor (S) A = zeros (आकार () एस)); एन = संख्या (एस); के लिए k = 1: एन ए (के) = एस (के) .x {1} (1); समाप्त; अंत
Comments
Post a Comment