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