1
많은 열이있는 대형 DataFrame이 있습니다. 또한 두 개의 열이있는 더 작은 DataFrame이 있습니다. 두 개의 DataFrame에있는 '레이블'과 '값'을 호출합니다. 큰 DataFrame의 'value'열을 작은 DataFrame의 'value'열로 바꿉니다. 큰 DataFrame 행의 경우 'label'이 작은 DataFrame의 행과 일치합니다. for 루프의 측면에서부분지도를 사용하여 pandas DataFrame의 열을 업데이트하십시오.
논리는 : 그것은 작은 DF에없는 레이블을 낭 때문에
largeDF = pd.DataFrame([['a',1],['b',2],['c',3],['d',4],['e',5]], columns=['label','value']).set_index('label')
smallDF = pd.DataFrame([['d',6],['e',7]], columns=['label','value']).set_index('label')
for label in smallDF.index:
largeDF.loc[label,'value'] = smallDF.loc[label,'value']
불행하게도
largeDF['value'] = smallDF['value']
의 분명한 대답은 작동하지 않습니다. .map()을 사용하면 비슷한 문제가 발생합니다.
내가 사용하고있는 for 루프는 매우 unpythonic, unpandas 및 느린 것 같습니다. 내가 누락 된 이것을하는 더 좋은 방법은 무엇입니까?