home / github / issues

Menu
  • Search all tables
  • GraphQL API

issues: 1659654612

This data as json

id node_id number title user state locked assignee milestone comments created_at updated_at closed_at author_association active_lock_reason draft pull_request body reactions performed_via_github_app state_reason repo type
1659654612 PR_kwDOAMm_X85N4PWL 7741 Add lshift and rshift operators 6145107 closed 0     4 2023-04-08T21:45:46Z 2023-04-28T14:22:07Z 2023-04-28T14:22:07Z CONTRIBUTOR   0 pydata/xarray/pulls/7741

This seems a little too easy, but the PR just adds lshift and rshit to generate_ops.py and ops.py then generated the 2 stub files with generate_ops.py.

  • [x] Closes #7727
  • [x] Tests added for:
  • xr.Variable
  • DataArray
  • dask
  • groupby
  • [x] User visible changes (including notable bug fixes) are documented in whats-new.rst
  • There will be new << >> syntax for dataarrays and datasets.
  • [x] New functions/methods are listed in api.rst
    • Existing basic math operators aren't really listed, that I can find.
    • Could add example code in the "Data arrays also implement many numpy.ndarray methods:" section of computation.rst ?

I'll wait for initial review before spending time on whats-new and api docs.

This enables bit shifting on arrays (when the type supports it).

```python import xarray as xr

x = xr.DataArray(5) print(x << 1)

<xarray.DataArray ()>

array(10)

x = xr.DataArray([0,1,2,3,4,5]) print(x << 1)

<xarray.DataArray (dim_0: 6)>

array([ 0, 2, 4, 6, 8, 10])

Dimensions without coordinates: dim_0

x = xr.DataArray([0,1,2,3,4,5]) print(x >> 1)

<xarray.DataArray (dim_0: 6)>

array([0, 0, 1, 1, 2, 2])

Dimensions without coordinates: dim_0

x = xr.DataArray([0,1,2,3,4,5.]) print(x >> 1) Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/workspaces/xarray/xarray/core/_typed_ops.py", line 255, in rshift return self._binary_op(other, operator.rshift) File "/workspaces/xarray/xarray/core/dataarray.py", line 4566, in _binary_op f(self.variable, other_variable) File "/workspaces/xarray/xarray/core/_typed_ops.py", line 461, in rshift return self._binary_op(other, operator.rshift) File "/workspaces/xarray/xarray/core/variable.py", line 2662, in _binary_op f(self_data, other_data) if not reflexive else f(other_data, self_data) TypeError: ufunc 'right_shift' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe'' ```

{
    "url": "https://api.github.com/repos/pydata/xarray/issues/7741/reactions",
    "total_count": 1,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 1,
    "rocket": 0,
    "eyes": 0
}
    13221727 pull

Links from other tables

  • 2 rows from issues_id in issues_labels
  • 4 rows from issue in issue_comments
Powered by Datasette · Queries took 1.131ms · About: xarray-datasette