@@ -140,6 +140,8 @@ def __new__(cls, data, dtype=None, copy=False, name=None, fastpath=False,
140
140
141
141
if issubclass (data .dtype .type , np .integer ):
142
142
return Int64Index (data , copy = copy , dtype = dtype , name = name )
143
+ if issubclass (data .dtype .type , np .floating ):
144
+ return Float64Index (data , copy = copy , dtype = dtype , name = name )
143
145
144
146
subarr = com ._asarray_tuplesafe (data , dtype = object )
145
147
@@ -1986,7 +1988,8 @@ def inferred_type(self):
1986
1988
def astype (self , dtype ):
1987
1989
if np .dtype (dtype ) not in (np .object , np .float64 ):
1988
1990
raise TypeError ('Setting %s dtype to anything other than '
1989
- 'float64 or object is not supported' % self .__class__ )
1991
+ 'float64 or object is not supported' %
1992
+ self .__class__ )
1990
1993
return Index (self .values , name = self .name , dtype = dtype )
1991
1994
1992
1995
def _convert_scalar_indexer (self , key , typ = None ):
@@ -2020,7 +2023,7 @@ def get_value(self, series, key):
2020
2023
k = _values_from_object (key )
2021
2024
loc = self .get_loc (k )
2022
2025
new_values = series .values [loc ]
2023
- if np .isscalar (new_values ):
2026
+ if np .isscalar (new_values ) or new_values is None :
2024
2027
return new_values
2025
2028
2026
2029
new_index = self [loc ]
0 commit comments