@@ -3915,7 +3915,6 @@ def isetitem(self, loc, value) -> None:
3915
3915
In cases where ``frame.columns`` is unique, this is equivalent to
3916
3916
``frame[frame.columns[i]] = value``.
3917
3917
"""
3918
- using_cow = using_copy_on_write ()
3919
3918
if isinstance (value , DataFrame ):
3920
3919
if is_integer (loc ):
3921
3920
loc = [loc ]
@@ -3927,13 +3926,11 @@ def isetitem(self, loc, value) -> None:
3927
3926
)
3928
3927
3929
3928
for i , idx in enumerate (loc ):
3930
- arraylike , refs = self ._sanitize_column (
3931
- value .iloc [:, i ], using_cow = using_cow
3932
- )
3929
+ arraylike , refs = self ._sanitize_column (value .iloc [:, i ])
3933
3930
self ._iset_item_mgr (idx , arraylike , inplace = False , refs = refs )
3934
3931
return
3935
3932
3936
- arraylike , refs = self ._sanitize_column (value , using_cow = using_cow )
3933
+ arraylike , refs = self ._sanitize_column (value )
3937
3934
self ._iset_item_mgr (loc , arraylike , inplace = False , refs = refs )
3938
3935
3939
3936
def __setitem__ (self , key , value ):
@@ -4170,7 +4167,7 @@ def _set_item(self, key, value) -> None:
4170
4167
Series/TimeSeries will be conformed to the DataFrames index to
4171
4168
ensure homogeneity.
4172
4169
"""
4173
- value , refs = self ._sanitize_column (value , using_cow = using_copy_on_write () )
4170
+ value , refs = self ._sanitize_column (value )
4174
4171
4175
4172
if (
4176
4173
key in self .columns
@@ -4813,7 +4810,7 @@ def insert(
4813
4810
elif isinstance (value , DataFrame ):
4814
4811
value = value .iloc [:, 0 ]
4815
4812
4816
- value , refs = self ._sanitize_column (value , using_cow = using_copy_on_write () )
4813
+ value , refs = self ._sanitize_column (value )
4817
4814
self ._mgr .insert (loc , column , value , refs = refs )
4818
4815
4819
4816
def assign (self , ** kwargs ) -> DataFrame :
@@ -4884,9 +4881,7 @@ def assign(self, **kwargs) -> DataFrame:
4884
4881
data [k ] = com .apply_if_callable (v , data )
4885
4882
return data
4886
4883
4887
- def _sanitize_column (
4888
- self , value , using_cow : bool = False
4889
- ) -> tuple [ArrayLike , BlockValuesRefs | None ]:
4884
+ def _sanitize_column (self , value ) -> tuple [ArrayLike , BlockValuesRefs | None ]:
4890
4885
"""
4891
4886
Ensures new columns (which go into the BlockManager as new blocks) are
4892
4887
always copied (or a reference is being tracked to them under CoW)
@@ -4907,7 +4902,7 @@ def _sanitize_column(
4907
4902
if is_dict_like (value ):
4908
4903
if not isinstance (value , Series ):
4909
4904
value = Series (value )
4910
- return _reindex_for_setitem (value , self .index , using_cow = using_cow )
4905
+ return _reindex_for_setitem (value , self .index )
4911
4906
4912
4907
if is_list_like (value ):
4913
4908
com .require_length_match (value , self .index )
@@ -11923,12 +11918,12 @@ def _from_nested_dict(data) -> collections.defaultdict:
11923
11918
11924
11919
11925
11920
def _reindex_for_setitem (
11926
- value : DataFrame | Series , index : Index , using_cow : bool = False
11921
+ value : DataFrame | Series , index : Index
11927
11922
) -> tuple [ArrayLike , BlockValuesRefs | None ]:
11928
11923
# reindex if necessary
11929
11924
11930
11925
if value .index .equals (index ) or not len (index ):
11931
- if using_cow and isinstance (value , Series ):
11926
+ if using_copy_on_write () and isinstance (value , Series ):
11932
11927
return value ._values , value ._references
11933
11928
return value ._values .copy (), None
11934
11929
0 commit comments