이 질문은 this one과 비슷하지만 차이점은 하나의 값 대신 하나의 데이터 프레임 열에 값 목록이 있음을 의미합니다.팬더에서 일회용 코드를 효율적으로 수행하는 방법
words
이라는 열이있는 팬더 데이터 프레임이 있다고 가정 해 봅니다. 여기에는 문서에서 사용할 수있는 단어 색인이 포함됩니다. 예를 들어 다음 데이터 프레임에는 첫 번째 단어에 ['a','b']
이 포함되고 두 번째 단어에는 ['a','c','d']
이 포함 된 두 개의 문서가 있습니다.
df = pd.DataFrame()
df['words'] = [['a','b'],['a','c','d']]
나는 각 단어에 대해, 다른 바이너리 컬럼에 하나 개의 컬럼을 words
열을 변환 할. 위의 dataframe가 변환됩니다 : 지금
df['a'] = [True, True]
df['b'] = [True, False]
df['c'] = [False, True]
df['d'] = [False, True]
, 나는 그것이 words
열에서 다른 단어를 사용할 수 w
를 통해 반복 할 다음과 같은 코드를 가지고있다.
df[w] = [w in word_list for word_list in df['words']]
분명히 매우 느립니다. 이 작업을 수행하는 효율적인 방법이 있습니까?
[이 해결책] (https://stackoverflow.com/a/45684296/5741205) – MaxU