inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[개정판] 파이썬 머신러닝 완벽 가이드

Opinion Review 데이터 세트를 이용한 문서 군집화 실습 - 02

LemNormalize 함수 관련 질문

533

최원빈

작성한 질문수 45

0

안녕하세요 선생님. 먼저 좋은 강의 감사드립니다.

함수 관련 질문이 있어 드리게 되었습니다.

remove_punct_dict = dict((ord(punct), None) for punct in string.punctuation)

def LemNormalize(text):

return LemTokens(nltk.word_tokenize(text.lower().translate(remove_punct_dict)))

여기에서 .translate(remove_punct_dict) 부분이 잘 이해가 되지 않아 질문을 드립니다!

이 부분이 stop_words를 제거하는 코드라는 것은 이해했으나, 어떻게 작동하는지 궁금하여 질문을 드립니다.

감사합니다.

python 머신러닝 통계

답변 1

1

권 철민

안녕하십니까,

먼저 text.lower().translate(remove_punct_dict) 을 보시면 text 스트링 문자를 lower()로 소문자 스트링 문자를 만든 후에 translate()를 호출합니다.

파이썬 String의 translate()함수는 특정 문자를 다른 문자로 변환할 수 있는데, 인자로 Dictionary 값을 받을 수 있습니다. 인자로 들어오는 Dictionary값은 어떤 문자를 어떻게 변환해야 할지를 지정해 줍니다.

text.lower().translate(remove_punct_dict)) 의 인자로 들어온 remove_punct_dict의 값을 주피터 노트북의 다른셀에서 확인해 보시면, 아래와 같을 겁니다. 예를 들어 33: None은 아스키값 33에 해당하는 문자를 None, 즉 제거하라는 의미 입니다. 이런식으로 translate() 가 동작해서 stop words를 삭제한 문자가 다시 tokenize()의 인자로 입력되게 됩니다.

{33: None,
 34: None,
 35: None,
 36: None,
 37: None,
 38: None,
 39: None,
 40: None,
 41: None,
 42: None,
 43: None,
 44: None,
 45: None,
 46: None,
 47: None,
 58: None,
 59: None,
 60: None,
 61: None,
 62: None,
 63: None,
 64: None,
 91: None,
 92: None,
 93: None,
 94: None,
 95: None,
 96: None,
 123: None,
 124: None,
 125: None,
 126: None}

감사합니다.

0

최원빈

감사합니다! 선생님

모델 서빙과 관련된 강좌가 출시되는지 질문드립니다.

0

24

2

안녕하세요 열심히 수강중인 학생입니다

0

68

2

정수 인덱싱

0

71

2

넘파이 오류

0

88

2

11강 numpy의 axis 축 질문 드립니다.

0

89

2

Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.

0

80

2

Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.

0

71

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

76

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

65

2

5강 강의 오류가 있어요.

0

86

1

실무에서 LTV 관련 모델 선택 질문입니다!

0

74

2

14강 강의 듣는중에 궁금한게 있어서 질문합니다~

0

70

3

파이썬 다운그레이 후 사이킷런 재설치

0

122

2

좋은 강의 감사합니다.

0

75

2

scoring 함수 음수값

0

68

2

6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?

0

104

2

분류 평가 정확도 예측

0

80

2

안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.

0

100

1

카카오톡 채널 있나요

0

110

1

혹시 강의에서 사용하시는 ppt 받을 수 있는건가요

0

191

2

pca 스케일링 관련하여 질문드립니다.

0

102

2

주피터 대신 구글 코랩

0

174

2

강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?

0

149

2

실루엣 스코어..

0

87

2