를 통해 새 열을 만들 때 임시 변수를 피하기 위해 어떻게 명백한groupby.apply
df.groupby('keycol').apply(somefunc)
의 결과로 dataframe df
에 새 열 newcol
를 만들 싶습니다 작동하지 않습니다 : df['newcol']
모두 nan
(RHS가 평가하는 대상이 아님)이거나 예외가 발생했습니다 (예외 세부 정보는에 따라 크게 다릅니다). 0 반환).
나는 그들은 모두 실패
import pandas as pd
df['newcol'] = pd.Series(df.groupby('keycol').apply(somefunc), index=df.index)
같은 물건을 포함하여 위의 많은 변화를 시도했다.
import pandas as pd
tmp = df.groupby('keycol').apply(lambda x: pd.Series(somefunc(x)))
tmp.index = df.index
df['rank'] = tmp
중간 변수를 만들지 않고도이를 달성 할 수있는 방법이 있나요 : 일했다
있는 유일한 방법은 중간 변수를 정의 할 필요?
은 (GroupBy.apply
에 대한 문서는 거의 컨텐츠 무료입니다.)
데이터가 실제로 어떻게 생겼습니까? 또한 groupby를 만들고 함께 적용 하시겠습니까 (예 : 'agg'가 아닌)? "모두 실패합니다"라고 말하면,이 작업을 수행하여 정확히 무엇을하려고하는지에 대한 설명과 같이 특정 오류 메시지가 도움이됩니다. – Ajean