[python][프로그래머스_lv1] 푸드 파이트 대회
·
코딩테스트/python
Description 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다. 이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 선수들이 음식을 더 잘 먹을 수 있게 하려고 합니다. 이번 대회를 위해 수웅이는 음식을 주문했는데, ..
[NLP] Tokenization
·
데이터 과학 Data Science/자연어처리 NLP
1.Tokenization Tokenization 은 왜 할까? 단어들은 (특히 한국어는) 하나의 어간으로만 이루어져있지 않다. 보통 접사가 붙거나 두개 이상의 어근이 합쳐지며 파생되는 형태로 생성되기 때문에 우리는 단어나 문장을 분석 전에 먼저 분절시켜줄 필요가 있다. 예를 들어, "한국의 김치찌개" 는 각각 한국/의/김치/찌개 로 분리할 수 있다. 이렇게 딥러닝을 시키기 전의 분절은 단어의 결합으로 이루어진 단어를 쪼개서 희소성을(sparesness) 낮추고, 띄어쓰기도 통일시킬 수 있다. (한국어의 띄어쓰기는 정말 제각각이다..) 영어의 경우는 NLTK 를 이용해 comma 등의 후처리만 하면 됨 (띄어쓰기가 이미 잘 되어있음) 2. 형태소 분석 / 품사 태깅 형태소 분석은 앞서 말한 것 처럼 문장..
[NLP] 정규표현식 re 간단한 예제
·
데이터 과학 Data Science/자연어처리 NLP
RegEx 를 적용하는 방법이 두가지 있다. 1. Text Editor 를 이용해 interactive 하게 로그를 보고 바로바로 결과를 보면서 하는 방법 2. 전용 모듈을 이용하는 방법 당연히 전자가 더 쉽다. 텍스트 에디터를 지원하는 프로그램은 Sblime Text, VScode, EmEditor 가 있는데 전자 두개는 무료이나 데이터 양이 크면 버벅거린다고 한다. 기가단위의 대용량 코퍼스를 정제해야 한다면 그냥 후자를 이용해보자 정규식을 적용하는 법의 주된 원리는 "규칙을 찾아내는 것" 이다. 내가 정제하고픈 불용어가 들어가있는 규칙을 찾아내어 이 표현을 이용해 보도록 하자 1. 꺽쇄 이용 [] #23,4,5 중 하나거나 cde 중 하나면 걸림 [2-5c-e] #23,4,5 중 하나가 아니거나 cd..
[GA] GTM 개념 및 구성요소 살펴보기
·
데이터 분석 Data Analysis/Google Analytics
1. GTM? GTM 은 구글 애널리틱스에서 데이터 분석을 하기 위해 소비자의 행동을 측정하고픈 어떤 웹사이트에서 버튼마다 태깅을 하기 위해 쓰는 이차적인 툴이다. 웹사이트의 html 에 태그를 거는 작업을 개발자 의존도를 최소화하여 간단하게 할 수 있고, 데이터의 집계와 가공 또한 GA 에서 한번에 할 수 있다는 특징이 있다 구글 태그매니저는 다음과 같은 구성요소로 되어있다. 내 회사의 계정 안에, 웹사이트의 태그가 담긴 컨테이너가 있고, 각 버튼마다 태그가 달려 있으며, 트리거의 경우는 이 변수를 작동시키는 원인라고 보면 되겠다 이처럼 GTM 은 GA 에 데이터를 전송하기 위한 중간 매게채의 역할을 한다. 태그를 다는 방식을 쓰기 때문에 사용자가 원하는 방식으로 데이터를 수집할 수 있다는 장점이 있겠..
[python][프로그래머스_lv1] 숫자 문자열과 영단어 (카카오 코딩테스트)
·
코딩테스트/python
Description 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다. 숫자영단어 0 zero 1 one 2 two 3 three 4 four 5 five 6 s..
[python][프로그래머스_lv1] 크기가 작은 부분 문자열
·
코딩테스트/python
Description 숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성하세요. 예를 들어, t="3141592"이고 p="271" 인 경우, t의 길이가 3인 부분 문자열은 314, 141, 415, 159, 592입니다. 이 문자열이 나타내는 수 중 271보다 작거나 같은 수는 141, 159 2개 입니다. 제한사항 1 ≤ p의 길이 ≤ 18 p의 길이 ≤ t의 길이 ≤ 10,000 t와 p는 숫자로만 이루어진 문자열이며, 0으로 시작하지 않습니다. 입출력 예tpresult "3141592" "271" 2 "500220839878" "..
Joy | 조이
Joyful Product