คำถามติดแท็ก matrix

ในทางคณิตศาสตร์เมทริกซ์ (เมทริกซ์พหูพจน์) คืออาร์เรย์ของตัวเลขสัญลักษณ์หรือนิพจน์รูปสี่เหลี่ยมผืนผ้าซึ่งจัดเรียงเป็นแถวและคอลัมน์ แต่ละรายการในเมทริกซ์เรียกว่าองค์ประกอบหรือรายการ

27
วิธีกำหนดอาเรย์สองมิติใน Python
ฉันต้องการกำหนดอาเรย์สองมิติโดยไม่มีความยาวเริ่มต้นเช่นนี้ Matrix = [][] แต่มันไม่ทำงาน ... ฉันได้ลองใช้รหัสด้านล่างแล้ว แต่มันก็ผิดเช่นกัน: Matrix = [5][5] ข้อผิดพลาด: Traceback ... IndexError: list index out of range ความผิดพลาดของฉันคืออะไร?

12
ฟังก์ชัน Transpose / Unzip (ตรงกันข้ามของ zip)
ฉันมีรายการ tuples 2 รายการและฉันต้องการแปลงเป็น 2 รายการโดยที่รายการแรกมีรายการแรกในแต่ละ tuple และรายการที่สองถือรายการที่สอง ตัวอย่างเช่น: original = [('a', 1), ('b', 2), ('c', 3), ('d', 4)] # and I want to become... result = (['a', 'b', 'c', 'd'], [1, 2, 3, 4]) มีฟังก์ชั่นบิวอินที่ทำเช่นนั้น?
505 python  list  matrix  transpose 

9
ฉันจะจัดทำดัชนีอาร์เรย์ MATLAB ที่ส่งกลับโดยฟังก์ชันโดยไม่กำหนดค่าให้กับตัวแปรโลคอลได้อย่างไร
ตัวอย่างเช่นถ้าฉันต้องการอ่านค่ากลางจากmagic(5)ฉันสามารถทำเช่นนี้: M = magic(5); value = M(3,3); value == 13ที่จะได้รับ ฉันต้องการที่จะสามารถทำสิ่งหนึ่งในสิ่งเหล่านี้: value = magic(5)(3,3); value = (magic(5))(3,3); เพื่อแจกจ่ายด้วยตัวแปรกลาง อย่างไรก็ตาม MATLAB บ่นเกี่ยวกับUnbalanced or unexpected parenthesis or bracketวงเล็บแรกก่อนหน้า3ในวงเล็บแรกก่อน เป็นไปได้ไหมที่จะอ่านค่าจากอาเรย์ / เมทริกซ์โดยไม่ต้องกำหนดค่าให้กับตัวแปรก่อน

5
อะไรคือความแตกต่างระหว่างอาร์เรย์ numpy และเมทริกซ์? ฉันควรใช้อันไหนดี
ข้อดีและข้อเสียของแต่ละข้อคืออะไร จากสิ่งที่ฉันได้เห็นคนใดคนหนึ่งสามารถทำงานแทนคนอื่นได้ถ้าต้องการดังนั้นฉันควรจะใช้ทั้งสองอย่างหรือติดอยู่กับคนใดคนหนึ่ง? รูปแบบของโปรแกรมจะมีผลต่อการเลือกของฉันหรือไม่? ฉันกำลังเรียนรู้เครื่องจักรด้วยการใช้ numpy ดังนั้นจึงมีเมทริกซ์จำนวนมาก แต่มีเวกเตอร์จำนวนมาก (อาร์เรย์)
346 python  arrays  matrix  numpy 

6
ความแตกต่างระหว่างรูปร่างของ numpy.array (R, 1) และ (R,)
ในnumpyการดำเนินการ(R, 1)บางอย่างกลับมาเป็นรูปร่างแต่กลับมา(R,)บ้าง สิ่งนี้จะทำให้การคูณเมทริกซ์น่าเบื่อมากขึ้นเนื่องจากreshapeจำเป็นต้องใช้อย่างชัดเจน ตัวอย่างเช่นได้รับเมทริกซ์Mถ้าเราต้องการที่จะทำnumpy.dot(M[:,0], numpy.ones((1, R)))ที่ไหนRจำนวนแถว (แน่นอนปัญหาเดียวกันยังเกิดขึ้นคอลัมน์ฉลาด) เราจะได้รับmatrices are not alignedข้อผิดพลาดตั้งแต่M[:,0]อยู่ในรูปร่าง(R,)แต่อยู่ในรูปnumpy.ones((1, R))(1, R) ดังนั้นคำถามของฉันคือ: ความแตกต่างระหว่างรูปร่าง(R, 1)กับ(R,)อะไร ฉันรู้ว่ามันคือรายการของตัวเลขและรายการที่ทุกรายการมีเพียงตัวเลข เพียงแค่สงสัยว่าทำไมไม่ออกแบบnumpyเพื่อให้เหมาะกับรูปร่าง(R, 1)แทน(R,)การคูณเมทริกซ์ที่ง่ายขึ้น มีวิธีที่ดีกว่าสำหรับตัวอย่างข้างต้นหรือไม่ โดยไม่มีการปรับรูปร่างอย่างชัดเจน:numpy.dot(M[:,0].reshape(R, 1), numpy.ones((1, R)))

30
คุณจะหมุนอาร์เรย์สองมิติได้อย่างไร
แรงบันดาลใจจากการโพสต์ของ Raymond Chenสมมติว่าคุณมีอาร์เรย์แบบสองมิติ 4x4 เขียนฟังก์ชั่นที่หมุนได้ 90 องศา เรย์มอนด์เชื่อมโยงไปยังโซลูชันในโค้ดหลอก แต่ฉันต้องการเห็นบางสิ่งในโลกแห่งความเป็นจริง [1][2][3][4] [5][6][7][8] [9][0][1][2] [3][4][5][6] กลายเป็น: [3][9][5][1] [4][0][6][2] [5][1][7][3] [6][2][8][4] ปรับปรุง : คำตอบของนิคตรงไปตรงมาที่สุด แต่มีวิธีการทำดีกว่า n ^ 2 หรือไม่? เกิดอะไรขึ้นถ้าเมทริกซ์มีขนาด 10,000x10000?

11
อะไรคือไลบรารี C ++ เวกเตอร์ / เมทริกซ์คณิตศาสตร์ / พีชคณิตเชิงเส้นที่ใช้กันอย่างแพร่หลายและการแลกเปลี่ยนต้นทุนและผลประโยชน์ [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน2 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ดูเหมือนว่าโครงการจำนวนมากจะต้องทำคณิตศาสตร์เมทริกซ์อย่างช้าๆและตกหลุมพรางของการสร้างเวกเตอร์ชั้นหนึ่งและค่อยๆเพิ่มฟังก์ชั่นการใช้งานจนกว่าพวกเขาจะได้สร้างห้องสมุดพีชคณิตเชิงเส้นที่กำหนดเองแบบครึ่งทางขึ้นอยู่กับมัน ฉันต้องการหลีกเลี่ยงที่ในขณะที่ไม่ได้สร้างในการพึ่งพาไลบรารีที่เกี่ยวข้องกันบางอย่าง (เช่น OpenCV, OpenSceneGraph) อะไรคือไลบรารีเมทริกซ์คณิตศาสตร์ / พีชคณิตเชิงเส้นที่ใช้กันโดยทั่วไปมีอะไรบ้างและเหตุใดจึงตัดสินใจใช้มากกว่าหนึ่ง มีผู้ใดบ้างที่จะไม่แนะนำให้ใช้ด้วยเหตุผลบางอย่าง? ฉันใช้สิ่งนี้โดยเฉพาะในบริบททางเรขาคณิต / เวลา * (2,3,4 Dim) * แต่อาจใช้ข้อมูลมิติที่สูงขึ้นในอนาคต ฉันกำลังมองหาความแตกต่างเกี่ยวกับ: API, ความเร็ว, การใช้หน่วยความจำ, ความกว้าง / ความสมบูรณ์, ความแคบ / ความจำเพาะ, ความสามารถในการขยายและ / หรือวุฒิภาวะ / ความมั่นคง ปรับปรุง ฉันลงเอยด้วยการใช้ Eigen3 ซึ่งฉันมีความสุขมาก

30
อัลกอริทึมการวางระเบิด
ฉันมีn x mเมทริกซ์ที่ประกอบด้วยจำนวนเต็มไม่เป็นลบ ตัวอย่างเช่น: 2 3 4 7 1 1 5 2 6 2 4 3 4 2 1 2 1 2 4 1 3 1 3 4 1 2 1 4 3 2 6 9 1 6 4 "การทิ้งระเบิด" ลดจำนวนหนึ่งของเซลล์เป้าหมายและเพื่อนบ้านทั้งแปดของมันลงเหลือศูนย์ให้น้อยที่สุด x x x x X x x x x …

12
ทำไม MATLAB ถึงรวดเร็วในการคูณเมทริกซ์?
ฉันกำลังสร้างมาตรฐานด้วย CUDA, C ++, C #, Java และการใช้ MATLAB สำหรับการตรวจสอบและสร้างเมทริกซ์ เมื่อฉันทำการคูณเมทริกซ์ด้วย MATLAB 2048x2048และเมทริกซ์ที่ยิ่งใหญ่กว่าก็จะถูกคูณด้วยเกือบทันที 1024x1024 2048x2048 4096x4096 --------- --------- --------- CUDA C (ms) 43.11 391.05 3407.99 C++ (ms) 6137.10 64369.29 551390.93 C# (ms) 10509.00 300684.00 2527250.00 Java (ms) 9149.90 92562.28 838357.94 MATLAB (ms) 75.01 423.10 3133.90 มีเพียง CUDA เท่านั้นที่สามารถแข่งขันได้ แต่ฉันคิดว่าอย่างน้อย C …

23
การโอนอาเรย์สองมิติใน JavaScript
ฉันมีอาร์เรย์หลายอย่างเช่น: [ [1,2,3], [1,2,3], [1,2,3], ] ฉันต้องการจะแปลงมันเพื่อให้ได้อาเรย์ต่อไปนี้: [ [1,1,1], [2,2,2], [3,3,3], ] ไม่ใช่เรื่องยากที่จะเขียนโปรแกรมโดยใช้ลูป: function transposeArray(array, arrayLength){ var newArray = []; for(var i = 0; i < array.length; i++){ newArray.push([]); }; for(var i = 0; i < array.length; i++){ for(var j = 0; j < arrayLength; j++){ newArray[j].push(array[i][j]); }; }; return …

30
วนเป็นเกลียว
เพื่อนต้องการอัลกอริทึมที่จะปล่อยให้เขาวนผ่านองค์ประกอบของเมทริกซ์ NxM (N และ M เป็นเลขคี่) ฉันคิดวิธีแก้ปัญหา แต่ฉันอยากเห็นว่าเพื่อนร่วมงานของฉันสามารถหาทางแก้ปัญหาที่ดีกว่านี้ได้หรือไม่ ฉันโพสต์โซลูชันของฉันเป็นคำตอบสำหรับคำถามนี้ ตัวอย่างผลลัพธ์: สำหรับเมทริกซ์ 3x3 เอาต์พุตควรเป็น: (0, 0) (1, 0) (1, 1) (0, 1) (-1, 1) (-1, 0) (-1, -1) (0, -1) (1, -1 ) นอกจากนี้อัลกอริทึมควรสนับสนุนเมทริกซ์ที่ไม่ใช่สแควร์ดังนั้นตัวอย่างเช่นเมทริกซ์ 5x3 เอาต์พุตควรเป็น: (0, 0) (1, 0) (1, 1) (0, 1) (-1, 1) (-1, 0) (-1, -1) (0, …

6
ฉันควรใช้ data.frame หรือ matrix หรือไม่?
เมื่อใดควรใช้ a data.frameและควรใช้ a เมื่อmatrixใด ทั้งสองเก็บข้อมูลในรูปแบบสี่เหลี่ยมดังนั้นบางครั้งก็ไม่ชัดเจน มีกฎทั่วไปของหัวแม่มือสำหรับเมื่อใช้ชนิดข้อมูลใด
152 r  matrix  dataframe  r-faq 

19
ประสิทธิภาพของไลบรารีคณิตศาสตร์ Java matrix หรือไม่ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา เรากำลังคำนวณอะไรบางอย่างที่ runtime ถูกผูกมัดโดยการดำเนินการเมทริกซ์ (รายละเอียดบางอย่างด้านล่างหากสนใจ) ประสบการณ์นี้ทำให้เกิดคำถามต่อไปนี้: ชาวบ้านมีประสบการณ์กับการทำงานของห้องสมุด Java สำหรับคณิตศาสตร์เมทริกซ์ (เช่นทวีคูณผกผัน ฯลฯ ) หรือไม่? ตัวอย่างเช่น: JAMA COLT Apache ทั่วไปคณิตศาสตร์ ฉันค้นหาและพบว่าไม่มีอะไร รายละเอียดการเปรียบเทียบความเร็วของเรา: เราใช้ Intel FORTRAN (ifort (IFORT) 10.1 20070913) เราได้นำมาใช้ใหม่ใน Java (1.6) โดยใช้ Apache commons math 1.2 matrix ops และยอมรับความถูกต้องของตัวเลขทั้งหมด (เรามีเหตุผลที่ต้องการเป็นภาษาจาวา) (Java doubles, Fortran real …
151 java  math  matrix  performance 

9
Numpy matrix ไปยังอาร์เรย์
ฉันกำลังใช้ numpy ฉันมีเมทริกซ์ที่มี 1 คอลัมน์และแถว N และฉันต้องการรับอาร์เรย์จากองค์ประกอบ N ตัวอย่างเช่นถ้าผมมีผมต้องการที่จะได้รับM = matrix([[1], [2], [3], [4]])A = array([1,2,3,4]) A = np.array(M.T)[0]เพื่อให้บรรลุมันผมใช้ ไม่มีใครรู้วิธีที่สง่างามมากขึ้นเพื่อให้ได้ผลลัพธ์เดียวกันหรือไม่ ขอบคุณ!
149 python  arrays  matrix  numpy 

8
การจัดการหน่วยความจำ R / ไม่สามารถจัดสรรเวกเตอร์ที่มีขนาด n Mb
ฉันพบปัญหาในการพยายามใช้วัตถุขนาดใหญ่ใน R ตัวอย่างเช่น: > memory.limit(4000) > a = matrix(NA, 1500000, 60) > a = matrix(NA, 2500000, 60) > a = matrix(NA, 3500000, 60) Error: cannot allocate vector of size 801.1 Mb > a = matrix(NA, 2500000, 60) Error: cannot allocate vector of size 572.2 Mb # Can't go smaller anymore …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.