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

NumPy เป็นส่วนขยายการคำนวณทางวิทยาศาสตร์และตัวเลขเป็นภาษาโปรแกรม Python

5
อะไรคือความแตกต่างระหว่าง NaN และ None?
ฉันกำลังอ่านสองคอลัมน์ของไฟล์ csv โดยใช้แพนด้าreadcsv()จากนั้นกำหนดค่าให้กับพจนานุกรม คอลัมน์ประกอบด้วยสตริงของตัวเลขและตัวอักษร ในบางครั้งมีกรณีที่เซลล์ว่างเปล่า ในความคิดของฉันค่าที่อ่านในรายการพจนานุกรมนั้นควรเป็นNoneแต่nanจะถูกกำหนดให้แทน แน่นอนว่าNoneมีความหมายมากกว่าเซลล์ว่างเนื่องจากมีค่า null ในขณะที่nanบอกว่าค่าที่อ่านไม่ใช่ตัวเลข ความเข้าใจของฉันถูกต้องหรือไม่อะไรคือความแตกต่างระหว่างNoneและnan? ทำไมจึงnanได้รับมอบหมายแทนNone? นอกจากนี้พจนานุกรมของฉันตรวจสอบเซลล์ว่างที่ใช้อยู่numpy.isnan(): for k, v in my_dict.iteritems(): if np.isnan(v): แต่นี่ทำให้ฉันมีข้อผิดพลาดที่บอกว่าฉันไม่สามารถใช้การตรวจสอบนี้vได้ ฉันเดาว่าเป็นเพราะตัวแปรจำนวนเต็มหรือทศนิยมไม่ใช่สตริงที่ควรใช้ หากเป็นจริงฉันจะตรวจสอบv"เซลล์ว่าง" / nanกรณีได้อย่างไร
97 python  numpy  pandas  nan 


1
ไม่เข้าใจประเภทข้อมูล
ฉันกำลังพยายามใช้เมทริกซ์เพื่อคำนวณสิ่งต่างๆ รหัสคือนี่ import numpy as np # some code mmatrix = np.zeros(nrows, ncols) print mmatrix[0, 0] แต่ฉันได้รับ 'ประเภทข้อมูลไม่เข้าใจ' และใช้งานได้ถ้าฉันทำจากเทอร์มินัล
96 python  matrix  numpy 

4
การเลือกแถวและคอลัมน์เฉพาะจากอาร์เรย์ NumPy
ฉันบ้าไปแล้วที่พยายามคิดว่าฉันทำอะไรผิดที่นี่ ฉันใช้ NumPy และฉันมีดัชนีแถวเฉพาะและดัชนีคอลัมน์เฉพาะที่ฉันต้องการเลือก นี่คือส่วนสำคัญของปัญหาของฉัน: import numpy as np a = np.arange(20).reshape((5,4)) # array([[ 0, 1, 2, 3], # [ 4, 5, 6, 7], # [ 8, 9, 10, 11], # [12, 13, 14, 15], # [16, 17, 18, 19]]) # If I select certain rows, it works print a[[0, …

5
python วิธีการจัดเรียงอาร์เรย์ numpy ด้วยศูนย์
ฉันต้องการทราบว่าฉันสามารถวางอาร์เรย์ตัวเลข 2D ด้วยศูนย์โดยใช้ python 2.6.6 กับ numpy เวอร์ชัน 1.5.0 ได้อย่างไร ขออภัย! แต่นี่คือข้อ จำกัด ของฉัน np.padดังนั้นผมจึงไม่สามารถใช้ ตัวอย่างเช่นฉันต้องการaเติมเลขศูนย์เพื่อให้รูปร่างของมันเข้าbกัน เหตุผลที่ฉันต้องการทำสิ่งนี้เพื่อให้ฉันทำได้: b-a ดังนั้น >>> a array([[ 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1.], [ 1., 1., 1., 1., 1.]]) >>> b array([[ 3., 3., 3., 3., 3., 3.], [ 3., …
96 python  arrays  numpy  pad 

1
สุ่มตัวอย่างทุกรายการที่ n ในอาร์เรย์ numpy
ฉันเป็นมือใหม่ที่มี numpy และฉันกำลังพยายามดึงข้อมูลบางส่วนจากอาร์เรย์จำนวนมาก สิ่งที่ฉันต้องทำคือเริ่มจากตำแหน่งที่กำหนดไว้ในอาร์เรย์ของฉันจากนั้นทำการย่อยทุกจุดข้อมูลที่ n จากตำแหน่งนั้นไปจนถึงจุดสิ้นสุดของอาร์เรย์ของฉัน โดยทั่วไปถ้าฉันมี a = [1,2,3,4,1,2,3,4,1,2,3,4....] ฉันต้องการย่อยสิ่งนี้เพื่อเริ่มต้นa[1]จากนั้นสุ่มตัวอย่างทุกๆจุดที่สี่จากตรงนั้น b = [2,2,2.....]
96 python  arrays  numpy 

10
ฉันจะลบน่านออกจากรายการ Python / NumPy ได้อย่างไร
ฉันมีรายการที่นับค่าหนึ่งในค่าที่ฉันได้คือ 'nan' countries= [nan, 'USA', 'UK', 'France'] ฉันพยายามลบออก แต่ทุกครั้งก็ได้รับข้อผิดพลาด cleanedList = [x for x in countries if (math.isnan(x) == True)] TypeError: a float is required เมื่อฉันลองสิ่งนี้: cleanedList = cities[np.logical_not(np.isnan(countries))] cleanedList = cities[~np.isnan(countries)] TypeError: ufunc 'isnan' not supported for the input types, and the inputs could not be safely coerced to …
96 python  numpy 


6
การใช้การฝังคำที่ผ่านการฝึกอบรมมาแล้ว (word2vec หรือ Glove) ใน TensorFlow
เราได้ตรวจสอบการดำเนินงานเมื่อเร็ว ๆ นี้ที่น่าสนใจสำหรับการจัดหมวดหมู่ข้อความสับสน อย่างไรก็ตามโค้ด TensorFlow ทั้งหมดที่ฉันได้ตรวจสอบจะใช้การฝังเวกเตอร์แบบสุ่ม (ไม่ได้รับการฝึกฝนมาก่อน) ดังต่อไปนี้: with tf.device('/cpu:0'), tf.name_scope("embedding"): W = tf.Variable( tf.random_uniform([vocab_size, embedding_size], -1.0, 1.0), name="W") self.embedded_chars = tf.nn.embedding_lookup(W, self.input_x) self.embedded_chars_expanded = tf.expand_dims(self.embedded_chars, -1) มีใครรู้วิธีใช้ผลลัพธ์ของ Word2vec หรือการฝังคำที่ได้รับการฝึกฝนมาก่อนของ GloVe แทนที่จะเป็นการสุ่มหรือไม่?

7
การวางแผนการแปลงฟูเรียร์อย่างรวดเร็วใน Python
ฉันสามารถเข้าถึง NumPy และ SciPy และต้องการสร้าง FFT ง่ายๆของชุดข้อมูล ฉันมีสองรายการรายการหนึ่งคือyค่าและอีกรายการคือการประทับเวลาสำหรับyค่าเหล่านั้น วิธีที่ง่ายที่สุดในการป้อนรายการเหล่านี้เป็นวิธี SciPy หรือ NumPy และพล็อต FFT ที่ได้คืออะไร ฉันได้ค้นหาตัวอย่าง แต่พวกเขาทั้งหมดอาศัยการสร้างชุดข้อมูลปลอมที่มีจุดข้อมูลจำนวนหนึ่งและความถี่ ฯลฯ และไม่ได้แสดงวิธีการทำเพียงชุดข้อมูลและการประทับเวลาที่เกี่ยวข้อง . ฉันได้ลองตัวอย่างต่อไปนี้: from scipy.fftpack import fft # Number of samplepoints N = 600 # Sample spacing T = 1.0 / 800.0 x = np.linspace(0.0, N*T, N) y = np.sin(50.0 * 2.0*np.pi*x) …
95 python  numpy  scipy  fft 

1
วิธีลบแถวทั้งหมดใน numpy.ndarray ที่มีค่าที่ไม่ใช่ตัวเลข
โดยพื้นฐานแล้วฉันกำลังทำการวิเคราะห์ข้อมูล ฉันอ่านในชุดข้อมูลเป็น numpy.ndarray และค่าบางส่วนหายไป (ไม่ว่าจะอยู่ที่นั่นเป็นอยู่NaNหรือเป็นสตริงที่เขียนว่าNA"") ฉันต้องการล้างแถวทั้งหมดที่มีรายการแบบนี้ ฉันจะทำสิ่งนั้นด้วย numpy ndarray ได้อย่างไร?
95 python  numpy 

9
แปลงค่านาโนเป็นศูนย์
ฉันมีอาร์เรย์ตัวเลข 2D NaNบางส่วนของค่าในอาร์เรย์นี้ ฉันต้องการดำเนินการบางอย่างโดยใช้อาร์เรย์นี้ ตัวอย่างเช่นพิจารณาอาร์เรย์: [[ 0. 43. 67. 0. 38.] [ 100. 86. 96. 100. 94.] [ 76. 79. 83. 89. 56.] [ 88. NaN 67. 89. 81.] [ 94. 79. 67. 89. 69.] [ 88. 79. 58. 72. 63.] [ 76. 79. 71. 67. 56.] [ 71. 71. …
95 python  numpy  nan 

3
python numpy.where () ทำงานอย่างไร
ฉันกำลังเล่นnumpyและขุดเอกสารและได้พบกับเวทมนตร์บางอย่าง ฉันกำลังพูดถึงnumpy.where(): >>> x = np.arange(9.).reshape(3, 3) >>> np.where( x > 5 ) (array([2, 2, 2]), array([0, 1, 2])) พวกเขาบรรลุภายในได้อย่างไรว่าคุณสามารถผ่านบางสิ่งบางอย่างx > 5เข้าไปในวิธีการได้? ฉันเดาว่ามันมีบางอย่างที่เกี่ยวข้อง__gt__แต่ฉันกำลังมองหาคำอธิบายโดยละเอียด

5
การเปลี่ยนองค์ประกอบ Numpy หากตรงตามเงื่อนไข
ฉันมีอาร์เรย์จำนวนมากที่ต้องจัดการเพื่อให้แต่ละองค์ประกอบเปลี่ยนเป็น 1 หรือ 0 หากตรงตามเงื่อนไข (จะใช้เป็นพิกเซลมาสก์ในภายหลัง) อาร์เรย์มีองค์ประกอบประมาณ 8 ล้านองค์ประกอบและวิธีการปัจจุบันของฉันใช้เวลานานเกินไปสำหรับท่อลดขนาด: for (y,x), value in numpy.ndenumerate(mask_data): if mask_data[y,x]<3: #Good Pixel mask_data[y,x]=1 elif mask_data[y,x]>3: #Bad Pixel mask_data[y,x]=0 มีฟังก์ชัน numpy ที่จะเร่งความเร็วนี้หรือไม่?

8
ฉันจะเพิ่มมิติข้อมูลใหม่ให้กับอาร์เรย์ Numpy ได้อย่างไร
ฉันเริ่มต้นด้วยอาร์เรย์จำนวนนับของรูปภาพ In[1]:img = cv2.imread('test.jpg') รูปร่างคือสิ่งที่คุณคาดหวังสำหรับภาพ RGB ขนาด 640x480 In[2]:img.shape Out[2]: (480, 640, 3) อย่างไรก็ตามภาพที่ฉันมีคือเฟรมวิดีโอซึ่งมีความยาว 100 เฟรม จะเป็นการดีที่ฉันต้องการจะมีอาร์เรย์เดียวที่มีข้อมูลทั้งหมดจากวิดีโอนี้ดังกล่าวว่าผลตอบแทนimg.shape(480, 640, 3, 100) วิธีใดที่ดีที่สุดในการเพิ่มเฟรมถัดไปนั่นคือข้อมูลรูปภาพชุดถัดไปอาร์เรย์ 480 x 640 x 3 อีกชุดในอาร์เรย์เริ่มต้นของฉัน
94 python  arrays  opencv  numpy 

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