Thursday 11 March 2021

Is mask working differently using inplace?

I've just found out about this strange behaviour of mask, could someone explain this to me?

A) [input]

df = pd.DataFrame(np.arange(10).reshape(-1, 2), columns=['A', 'B'])
df['C'] ='hi'
df.mask(df[['A', 'B']]<3, inplace=True)

[output]

A B C
0 NaN NaN hi
1 NaN 3.0 hi
2 4.0 5.0 hi
3 6.0 7.0 hi
4 8.0 9.0 hi

B) [input]

df = pd.DataFrame(np.arange(10).reshape(-1, 2), columns=['A', 'B'])
df['C'] ='hi'
df.mask(df[['A', 'B']]<3)

[output]

A B C
0 NaN NaN NaN
1 NaN 3.0 NaN
2 4.0 5.0 NaN
3 6.0 7.0 NaN
4 8.0 9.0 NaN

Thank you in advance



from Is mask working differently using inplace?

No comments:

Post a Comment