Pandas 切片的原位改性
这样做最有效的方法是什么(因为Pandas 切片的原位改性,pandas,Pandas,这样做最有效的方法是什么(因为replace的参数是一个切片,所以不起作用) DF[DF.col==x].col.replace(…,inplace=True) 一种方法是明确地完成任务: In [11]: df = pd.DataFrame([[1, 2], [3, 4]], columns=['a', 'b']) In [12]: df Out[12]: a b 0 1 2 1 3 4 In [13]: df.loc[df.a == 3, 'b'] = df.loc[df
replace
的参数是一个切片,所以不起作用)
DF[DF.col==x].col.replace(…,inplace=True)
一种方法是明确地完成任务:
In [11]: df = pd.DataFrame([[1, 2], [3, 4]], columns=['a', 'b'])
In [12]: df
Out[12]:
a b
0 1 2
1 3 4
In [13]: df.loc[df.a == 3, 'b'] = df.loc[df.a == 3, 'b'].replace({4: 7})
In [14]: df
Out[14]:
a b
0 1 2
1 3 7
另一种选择是使用,这可能会更快:
df.update(df.loc[df.a == 3, 'b'].replace({4: 7}))