मेरे पास फ़्लोट्स (कुछ सामान्य संख्या, कुछ नाम) की एक सरणी है जो एक पांडा डेटाफ़्रेम पर एक आवेदन से निकल रही है।
किसी कारण से, numpy.isnan इस सरणी पर विफल हो रहा है, हालांकि जैसा कि नीचे दिखाया गया है, प्रत्येक तत्व एक फ्लोट है, numpy.isnan प्रत्येक तत्व पर सही ढंग से चलता है, चर का प्रकार निश्चित रूप से एक संख्यात्मक सरणी है।
क्या चल रहा है?!
set([type(x) for x in tester])
Out[59]: {float}
tester
Out[60]:
array([-0.7000000000000001, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan], dtype=object)
set([type(x) for x in tester])
Out[61]: {float}
np.isnan(tester)
Traceback (most recent call last):
File "<ipython-input-62-e3638605b43c>", line 1, in <module>
np.isnan(tester)
TypeError: ufunc 'isnan' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''
set([np.isnan(x) for x in tester])
Out[65]: {False, True}
type(tester)
Out[66]: numpy.ndarray