File tree Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Expand file tree Collapse file tree 2 files changed +13
-1
lines changed Original file line number Diff line number Diff line change @@ -772,7 +772,10 @@ def ravel(self, order: str = "C") -> ArrayLike:
772
772
--------
773
773
numpy.ndarray.ravel : Return a flattened array.
774
774
"""
775
- return self ._values .ravel (order = order )
775
+ arr = self ._values .ravel (order = order )
776
+ if isinstance (arr , np .ndarray ) and using_copy_on_write ():
777
+ arr .flags .writeable = False
778
+ return arr
776
779
777
780
def __len__ (self ) -> int :
778
781
"""
Original file line number Diff line number Diff line change @@ -110,3 +110,12 @@ def test_series_to_numpy(using_copy_on_write):
110
110
arr = ser .to_numpy (dtype = "float64" )
111
111
assert not np .shares_memory (arr , get_array (ser , "name" ))
112
112
assert arr .flags .writeable is True
113
+
114
+
115
+ @pytest .mark .parametrize ("order" , ["F" , "C" ])
116
+ def test_ravel_read_only (using_copy_on_write , order ):
117
+ ser = Series ([1 , 2 , 3 ])
118
+ arr = ser .ravel (order = order )
119
+ if using_copy_on_write :
120
+ assert arr .flags .writeable is False
121
+ assert np .shares_memory (get_array (ser ), arr )
You can’t perform that action at this time.
0 commit comments