2013-05-12 9 views
14

मैं एक्स डेटा इसी तरह List2 में पढ़ा है List1 में, और y डेटा (पाठ फ़ाइलों से):साजिश समन्वय जोड़े के लिए दो सूचियों को कैसे जोड़ें?

list1 = { 0.0, 0.172, 0.266, ..} 
list2 = {-5.605, -5.970, -6.505, ..} 

मैं कैसे आदेश अंक {0.0, -5.605} साजिश में दो सूचियां संयोजित करते हैं, {0.172, -5.970} {0.266, -6.505}, ....

+1

हो सकता है आप कोशिश करना चाहते हैं: 'नाला [List1, List2] ~ विभाजन ~ 2' –

+1

उपयोगकर्ता को यह बताने का अधिकार है कि यह क्यों बंद है। यह निश्चित रूप से "विषय से बाहर" नहीं है। – agentp

+1

closers को: एक भाषा (गणित (टीएम)) के बारे में आपकी राय आपको बिल्कुल पता नहीं है। आपको अपनी करीबी शक्तियों को एक बुद्धिमान तरीके से उपयोग करना चाहिए। –

उत्तर

16

आप पसंद नहीं है Pinguin एक प्रकार की कटार के सुझाव की कोशिश

Transpose[{list1,list2}] 
2

यहाँ एक और जवाब यह है कि जोड़ी बनाने में एक पुन: प्रयोज्य समारोह बनाता है दो वैक्टर ऊपर। फ़ंक्शन एक शुद्ध फ़ंक्शन का उपयोग करता है जो जोड़ों को बनाने के लिए सबसे कम वेक्टर की लंबाई से अधिक नक्शा बनाता है।

list1 = {1, 2, 3, 4, 5}; 
    list2 = {13, 18, 20, 18, 13}; 
    pairUp[xValues_ , yValues_] := ({xValues[[#]], yValues[[#]]}) & /@ 
     Range[Min[Length[xValues], Length[yValues]]]; 

    pairUp[list1, list2] 
    (* 
     {{1, 13}, {2, 18}, {3, 20}, {4, 18}, {5, 13}} 
    *) 

आशा इस मदद करता है,

एडमंड

पुनश्च: मेथेमेटिका पर नए और समय-समय पर यहां पर कुछ सवालों के जवाब देने की कोशिश कर रहा द्वारा मेरी समझ में सुधार की उम्मीद में।

7

अभी तक एक और ..

MapThread[ {#1, #2} & , {list1, list2}] 

या आप शान से असमान लंबाई सूचियों को संभालने के लिए चाहते हैं:

MapThread[ {#1, #2} &, Take[#, All, Min @@ Length /@ #] &@{list1, list2} ] 
+1

आप 'मैप थ्रेड [सूची, {list1, list2}] का उपयोग कर इसे सरल बना सकते हैं। – lkuty

संबंधित मुद्दे