में रिकॉन्सील एनपी.फॉमिटर और बहुआयामी सरणी numpy
से np.fromiter
का उपयोग करना मुझे पसंद है क्योंकि यह np.array
ऑब्जेक्ट्स बनाने के लिए संसाधन-आलसी तरीका है। हालांकि, ऐसा लगता है कि यह बहुआयामी सरणी का समर्थन नहीं करता है, जो काफी उपयोगी भी हैं।पायथन
import numpy as np
def fun(i):
""" A function returning 4 values of the same type.
"""
return tuple(4*i + j for j in range(4))
# Trying to create a 2-dimensional array from it:
a = np.fromiter((fun(i) for i in range(5)), '4i', 5) # fails
# This function only seems to work for 1D array, trying then:
a = np.fromiter((fun(i) for i in range(5)),
[('', 'i'), ('', 'i'), ('', 'i'), ('', 'i')], 5) # painful
# .. `a` now looks like a 2D array but it is not:
a.transpose() # doesn't work as expected
a[0, 1] # too many indices (of course)
a[:, 1] # don't even think about it
मैं a
एक बहुआयामी सरणी होने के लिए है, जबकि जनरेटर के आधार पर इस तरह के एक आलसी निर्माण रखने कैसे मिल सकता है?