def _set_new_item(self, name: str, value: np.ndarray) -> None: """Set a new column and avoid SettingWithCopyWarning by using pandas internal APIs see: https://github.com/pandas-dev/pandas/blob/v1.1.0/pandas/core/frame.py#L3114 """ # noqa: E501 NDFrame._set_item(self, name, value)
def __setitem__(self, key, value): _, N, K = self.shape if isinstance(value, DataFrame): value = value.reindex(index=self.major_axis, columns=self.minor_axis) mat = value.values elif isinstance(value, np.ndarray): assert value.shape == (N, K) mat = np.asarray(value) elif np.isscalar(value): dtype = _infer_dtype(value) mat = np.empty((N, K), dtype=dtype) mat.fill(value) mat = mat.reshape((1, N, K)) NDFrame._set_item(self, key, mat)
def __setitem__(self, key, value): _, N, K = self.shape if isinstance(value, DataFrame): value = value.reindex(index=self.major_axis, columns=self.minor_axis) mat = value.values elif isinstance(value, np.ndarray): assert(value.shape == (N, K)) mat = np.asarray(value) elif np.isscalar(value): dtype = _infer_dtype(value) mat = np.empty((N, K), dtype=dtype) mat.fill(value) mat = mat.reshape((1, N, K)) NDFrame._set_item(self, key, mat)
def __setitem__(self, key, value): _, N, K = self.shape if isinstance(value, DataFrame): value = value.reindex(index=self.major_axis, columns=self.minor_axis) mat = value.values elif isinstance(value, np.ndarray): if value.shape != (N, K): raise AssertionError(("Shape of values must be (%d, %d), " "not (%d, %d)") % ((N, K) + values.shape)) mat = np.asarray(value) elif np.isscalar(value): dtype = _infer_dtype(value) mat = np.empty((N, K), dtype=dtype) mat.fill(value) else: raise TypeError("Cannot set item of type: %s" % str(type(value))) mat = mat.reshape((1, N, K)) NDFrame._set_item(self, key, mat)
def __setitem__(self, key, value): shape = tuple(self.shape) if isinstance(value, self._constructor_sliced): value = value.reindex( **self._construct_axes_dict_for_slice(self._AXIS_ORDERS[1:])) mat = value.values elif isinstance(value, np.ndarray): if not ((value.shape == shape[1:])): raise AssertionError() mat = np.asarray(value) elif np.isscalar(value): dtype, value = _infer_dtype_from_scalar(value) mat = np.empty(shape[1:], dtype=dtype) mat.fill(value) else: raise TypeError('Cannot set item of type: %s' % str(type(value))) mat = mat.reshape(tuple([1]) + shape[1:]) NDFrame._set_item(self, key, mat)
def __setitem__(self, key, value): shape = tuple(self.shape) if isinstance(value, self._constructor_sliced): value = value.reindex(**self._construct_axes_dict_for_slice(self._AXIS_ORDERS[1:])) mat = value.values elif isinstance(value, np.ndarray): if value.shape != shape[1:]: raise ValueError( "shape of value must be {0}, shape of given " "object was {1}".format(shape[1:], value.shape) ) mat = np.asarray(value) elif np.isscalar(value): dtype, value = _infer_dtype_from_scalar(value) mat = np.empty(shape[1:], dtype=dtype) mat.fill(value) else: raise TypeError("Cannot set item of type: %s" % str(type(value))) mat = mat.reshape(tuple([1]) + shape[1:]) NDFrame._set_item(self, key, mat)
def __setitem__(self, key, value): shape = tuple(self.shape) if isinstance(value, self._constructor_sliced): value = value.reindex( **self._construct_axes_dict_for_slice(self._AXIS_ORDERS[1:])) mat = value.values elif isinstance(value, np.ndarray): if value.shape != shape[1:]: raise ValueError('shape of value must be {0}, shape of given ' 'object was {1}'.format( shape[1:], tuple(map(int, value.shape)))) mat = np.asarray(value) elif np.isscalar(value): dtype, value = _infer_dtype_from_scalar(value) mat = np.empty(shape[1:], dtype=dtype) mat.fill(value) else: raise TypeError('Cannot set item of type: %s' % str(type(value))) mat = mat.reshape(tuple([1]) + shape[1:]) NDFrame._set_item(self, key, mat)
def __setitem__(self, key, value): _, N, K = self.shape if isinstance(value, DataFrame): value = value.reindex(index=self.major_axis, columns=self.minor_axis) mat = value.values elif isinstance(value, np.ndarray): if value.shape != (N, K): raise AssertionError( ('Shape of values must be (%d, %d), ' 'not (%d, %d)') % ((N, K) + values.shape)) mat = np.asarray(value) elif np.isscalar(value): dtype = _infer_dtype(value) mat = np.empty((N, K), dtype=dtype) mat.fill(value) else: raise TypeError('Cannot set item of type: %s' % str(type(value))) mat = mat.reshape((1, N, K)) NDFrame._set_item(self, key, mat)
def __setitem__(self, key, value): _, N, K = self.shape # XXX if isinstance(value, LongPanel): if len(value.items) != 1: raise ValueError('Input panel must have only one item!') value = value.to_wide()[value.items[0]] if isinstance(value, DataFrame): value = value.reindex(index=self.major_axis, columns=self.minor_axis) mat = value.values elif isinstance(value, np.ndarray): assert(value.shape == (N, K)) mat = np.asarray(value) elif np.isscalar(value): dtype = _infer_dtype(value) mat = np.empty((N, K), dtype=dtype) mat.fill(value) mat = mat.reshape((1, N, K)) NDFrame._set_item(self, key, mat)