2017-10-24 1 views
1

DataFrame 열에 대해 검사 할 부분 문자열이 있습니다. 예를 들어 :일련의 문자열이 PANDAS DataFrame 열에 포함되어 있는지 확인하고 해당 문자열을 행의 새 열로 할당하는 방법?

df['String'] = (['The dog went for a Walk.','The fish was in the lake.','The dog was barking']) 

내가 SUBSTR 해당 행에 대한 '문자열'에 없거나 포함 DataFrame에 열을 추가 할 :

SubStr = pd.series(['dog','cat','cow','fish']) 

DataFrame은 "문자열"라는 열이 그들 중 어느 것도 발견되지 않으면 NaN 만. 내 예에서 새 열이 포함되어 있어야합니다 : 내 검색 연구 나는 일련의 요소 목록에서 모든 항목을 검색하는 경우의 예를 발견 할 수 있었다에서

df['StrLookUp'] = ['dog','fish','dog'] 

을하지만, 그들 중 누구도 특정 요소를 반환하는 발견.

답변

2

사용 정규식 : 마법처럼

import re 

pattern= '|'.join(['dog','cat','cow','fish']) 

df['StrLookUp'] = [re.findall(pattern, i) for i in df['String']] 
+0

! 파이썬의 우아함은 항상 나를 놀라게합니다 ... – pacificdune

관련 문제