मैं एक बहुआयामी numpy सरणी जहां तत्वों या तो सही है या गलत मान रहे हैं:जांच करें कि सभी तत्वों को एक 2D सरणी पार फिसलने खिड़कियों में सच हैं अजगर
import numpy as np
#just making a toy array grid to show what I want to do
grid = np.ones((4,4),dtype = 'bool')
grid[0,0]=False
grid[-1,-1]=False
#now grid has a few false values but is a 4x4 filled with mostly true values
अब मैं एक और सरणी एम उत्पन्न करने के लिए की जरूरत है, जहां प्रत्येक साइट एम [i, j] पर मूल्य ग्रिड पर निर्भर करता है [मैं: मैं + 2, जम्मू: j + 2]
M = np.empty((4x4)) #elements to be filled
#here is the part I want to clean up
for ii in range(4):
for jj in range(4):
#details here are unimportant. It's just that M[ii,jj] depends on
#multiple elements of grid in some way
if ii+2<=4 and jj+2<=4:
M[ii,jj] = np.all(grid[ii:ii+2,jj:jj+2]==True)
else:
M[ii,jj] = False
में वहाँ के रूप में किसी तरह सरणी एम ग्रिड से तत्वों का उपयोग कर भरने के लिए है डबल लूप के बिना?
धन्यवाद दिवाकर! मुझे लगता है कि फिसल गया दृश्य दृश्य मुझे सबसे ज्यादा समझ में आता है - यह दृष्टिकोण बाद में इस परियोजना में अन्य कार्यों के लिए भी उपयोगी होना चाहिए। मुझे यह समझने के लिए थोड़ा और जांच करनी है कि वे – kevinkayaks
कैसे काम करते हैं मैं समझता हूं कि व्यूडब्ल्यू (ग्रिड, (2,2)) ग्रिड से 2x2 ब्लॉक खींचता है। सरल प्रश्न आने वाले प्रश्न: .all ((2,3)) क्या करता है? क्यों (2,3)? – kevinkayaks
@kevinkayaks इस पर कुछ टिप्पणी जोड़ा गया। – Divakar