如果我有兩個列表,如何將一個列表的第 n 個元素與另一個數組的第 n 個元素關聯起來?如何將一個清單的第 n 個元素關聯到另一個清單的第 n 個元素? 我正在研究關聯數組,但不確定如何實際循環它們並將每個鍵與值關聯起來。 (請注意,我的金鑰將位於一個清單中,而資料將位於另一個清單中)。
進階統計建模回覆:如果我有兩個列表,如何將一個列表的第 n 個元素與另一個數組的第 n 個元素關聯起來?不,你不能,它們作為鍵值對工作。我認為您需要維護多個數組,其中有需要追蹤的其他值。我通常會得到一個陣列集合:arrName、arrLSL、arrUSL 等。儘管清單元素可以是任何內容,但作為範例,對於規範,我將進行如下安排:
specs = arrSpecs[parameter];
lsl = specs["lsl"];
usl = specs["usl"];
即 arrSpecs 是一個數組,其鍵基於參數名稱;但該值是另一個數組,鍵為“lsl”和“usl”。
回覆:如果我有兩個列表,如何將一個列表的第 n 個元素與另一個數組的第 n 個元素關聯起來?嗨大衛,
可以對三個參數使用關聯數組嗎? 我嘗試了它,它適用於兩個參數,但第三個參數最後創建了自己的清單。 如何將它與每個關聯元素關聯起來?
回覆:如果我有兩個列表,如何將一個列表的第 n 個元素與另一個數組的第 n 個元素關聯起來?這很有幫助,謝謝!
回覆:如果我有兩個列表,如何將一個列表的第 n 個元素與另一個數組的第 n 個元素關聯起來?如果您純粹考慮列表,那麼索引會將它們關聯起來,即如果您想要兩個列表的第 i 個元素,則:
value1 = lst1[i];
value2 = lst2[i];
如果您想考慮關聯數組,那麼可以使用 2 個列表來建立數組
arr = AssociativeArray(lst1,lst2);
那麼大概您會想使用一個列表中的值來引用另一個列表,例如
key = lst1[i];
value = arr[key];
然後迭代,像這樣:
keys = arr << get keys;
for (i=1,i<=nitems(keys),i++,
key = keys[i];
value = arr[key];
show(key,value);
);
例如:
dt = open("$SAMPLE_DATA/Big Class.jmp");
lst1 = dt:name << get values;
lst2 = dt:age << get values;
arr = AssociativeArray(lst1,lst2);
keys = arr << get keys;
for (i=1,i<=nitems(keys),i++,
key = keys[i];
value = arr[key];
show(key,value);
);回覆:如果我有兩個列表,如何將一個列表的第 n 個元素與另一個數組的第 n 個元素關聯起來?我認為你走在正確的道路上;關聯數組可以工作。下面的例子有幫助嗎?
Names Default To Here( 1 );
list1={"A","B","C","D"};
list2={5,6,7,8};
aa = Associative Array( list1, list2 );
Show(aa[list1[2]]);