Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

주어진 Python 목록에서 Bigram 형성

<시간/>

바이그램은 주어진 문장에서 연속되는 두 단어마다 한 쌍의 단어를 생성하여 형성됩니다. 파이썬에서 이 기술은 텍스트 분석에 많이 사용됩니다. 아래에서 이를 달성하는 방법에 대한 두 가지 접근 방식을 볼 수 있습니다.

열거 및 분할 사용

이 두 가지 방법을 사용하여 먼저 문장을 여러 단어로 나눈 다음 열거 기능을 사용하여 연속된 단어에서 한 쌍의 단어를 만듭니다.

예시

목록 =['중지. 왼쪽 오른쪽을 봐. go']print("주어진 목록은 다음과 같습니다. \n" + str(list))# Bigram 구성에 enumerate() 및 split() 사용출력 =[(k, m.split()[n + 1]) for m in list for n, k in enumerate(m.split()) if n  

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

주어진 리스트는 :['Stop. 왼쪽 오른쪽을 봐. go']주어진 리스트로부터의 빅그램 형성은:[('중지', 'look'), ('look', 'left'), ('left', 'right.'), ('right.', ' 이동')]

zip() 및 split() 사용

zip 및 split 함수를 사용하여 비아그램을 생성할 수도 있습니다. zip() 함수는 split()을 사용하여 문장에서 생성된 단어를 순서대로 십일조로 묶습니다.

예시

목록 =['중지. 왼쪽 오른쪽을 봐. go']print("주어진 목록은 다음과 같습니다. \n" + str(list))# Bigram 형성을 위해 zip() 및 split() 사용출력 =[m for n in list for m in zip(n.split(" " )[:-1], n.split(" ")[1:])]print("주어진 목록의 빅그램 구성:\n" + str(출력))

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

주어진 리스트는 :['Stop. 왼쪽 오른쪽을 봐. go']주어진 리스트로부터의 빅그램 형성은:[('중지', 'look'), ('look', 'left'), ('left', 'right.'), ('right.', ' 이동')]