μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- pandas
- μλν΄λΌμ°λ
- dataframe
- t-test
- λΉ λ°μ΄ν°
- LDA
- λΉ λ°μ΄ν°λΆμκΈ°μ¬
- ν μ€νΈλΆμ
- λ°μ΄ν°λΆκ· ν
- numpy
- opencv
- μ€λ²μνλ§
- κ΅°μ§ν
- ADP
- Python
- λμνλ³Έ
- νμ΄μ¬
- ADsP
- ν¬λ‘€λ§
- PCA
- μΈλμνλ§
- Lambda
- λ°μ΄ν°λΆμμ λ¬Έκ°
- iloc
- μ£Όμ±λΆλΆμ
- λ°μ΄ν°λΆμ
- λ°μ΄ν°λΆμμ€μ λ¬Έκ°
- DBSCAN
- datascience
- λ 립νλ³Έ
Data Science LAB
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level 3 (보μ μΌν) λ³Έλ¬Έ
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level 3 (보μ μΌν)
γ γ γ γ 2022. 11. 8. 23:401. λ¬Έμ μ€λͺ
κ°λ°μ μΆμ μΌλ‘ μΈκ³ μ΅κ³ μ κ°λΆκ° λ μ΄νΌμΉλ μ€νΈλ μ€λ₯Ό λ°μ λλ©΄ μ΄λ₯Ό νκΈ° μν΄ μ€νλΌμΈ 맀μ₯μ μΌνμ νλ¬ κ°κ³€ ν©λλ€.
μ΄νΌμΉλ μΌνμ ν λλ©΄ 맀μ₯ μ§μ΄λμ νΉμ λ²μμ 물건λ€μ λͺ¨λ μΉμΈμ΄ ꡬ맀νλ μ΅κ΄μ΄ μμ΅λλ€.
μ΄λ λ μ€νΈλ μ€λ₯Ό νκΈ° μν΄ λ³΄μ 맀μ₯μ μΌνμ νλ¬ κ° μ΄νΌμΉλ μ΄μ μ²λΌ μ§μ΄λμ νΉμ λ²μμ 보μμ λͺ¨λ ꡬ맀νλ νΉλ³ν μλ λͺ©μ μ λ¬μ±νκ³ μΆμμ΅λλ€.
μ§μ΄λ λͺ¨λ μ’
λ₯μ 보μμ μ μ΄λ 1κ° μ΄μ ν¬ν¨νλ κ°μ₯ 짧μ ꡬκ°μ μ°Ύμμ ꡬ맀
μλ₯Ό λ€μ΄ μλ μ§μ΄λλ 4μ’ λ₯μ 보μ(RUBY, DIA, EMERALD, SAPPHIRE) 8κ°κ° μ§μ΄λ μμμ λλ€.
μ§μ΄λμ 3λ²λΆν° 7λ²κΉμ§ 5κ°μ 보μμ ꡬ맀νλ©΄ λͺ¨λ μ’ λ₯μ 보μμ μ μ΄λ νλ μ΄μμ© ν¬ν¨νκ² λ©λλ€.
μ§μ΄λμ 3, 4, 6, 7λ²μ 보μλ§ κ΅¬λ§€νλ κ²μ μ€κ°μ νΉμ ꡬκ°(5λ²)μ΄ λΉ μ§κ² λλ―λ‘ μ΄νΌμΉμ μΌν μ΅κ΄μ λ§μ§ μμ΅λλ€.
μ§μ΄λ λ²νΈ μμλλ‘ λ³΄μλ€μ μ΄λ¦μ΄ μ μ₯λ λ°°μ΄ gemsκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§λλ€. μ΄λ λͺ¨λ 보μμ νλ μ΄μ ν¬ν¨νλ κ°μ₯ 짧μ ꡬκ°μ μ°Ύμμ return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ.
κ°μ₯ 짧μ ꡬκ°μ μμ μ§μ΄λ λ²νΈμ λ μ§μ΄λ λ²νΈλ₯Ό μ°¨λ‘λλ‘ λ°°μ΄μ λ΄μμ return νλλ‘ νλ©°, λ§μ½ κ°μ₯ 짧μ ꡬκ°μ΄ μ¬λ¬ κ°λΌλ©΄ μμ μ§μ΄λ λ²νΈκ° κ°μ₯ μμ ꡬκ°μ return ν©λλ€.
2. μ ν 쑰건
- gems λ°°μ΄μ ν¬κΈ°λ 1 μ΄μ 100,000 μ΄νμ
λλ€.
- gems λ°°μ΄μ κ° μμλ μ§μ΄λμ λμ΄λ 보μμ λνλ λλ€.
- gems λ°°μ΄μλ 1λ² μ§μ΄λλΆν° μ§μ΄λ λ²νΈ μμλλ‘ λ³΄μμ΄λ¦μ΄ μ°¨λ‘λλ‘ μ μ₯λμ΄ μμ΅λλ€.
- gems λ°°μ΄μ κ° μμλ κΈΈμ΄κ° 1 μ΄μ 10 μ΄νμΈ μνλ²³ λλ¬Έμλ‘λ§ κ΅¬μ±λ λ¬Έμμ΄μ λλ€.
3. λ΄ νμ΄
- ν¨μ¨μ± ν μ€νΈ μ€ν¨
from collections import Counter
def solution(gems):
answer = []
buy = len(set(gems))
n = 0
while len(answer) == 0:
for i in range(len(gems) - buy - n + 1):
if buy == len(set(gems[i:i+buy+n])):
answer = [i+1,i+buy+n]
break
n+=1
return answer
import collections
def solution(gems):
num = len(set(gems))
ret = []
left = 0
counter = collections.Counter()
for right in range(len(gems)):
counter[gems[right]] += 1
right += 1
while len(counter) == num:
counter[gems[left]] -= 1
if counter[gems[left]] == 0:
del counter[gems[left]]
left += 1
ret.append([left, right])
return sorted(ret, key = lambda x: (x[1]-x[0], x[0]))[0]
4. λ€λ₯Έ μ¬λ νμ΄
def solution(gems):
size = len(set(gems))
dic = {gems[0]:1}
temp = [0, len(gems) - 1]
start , end = 0, 0
while(start < len(gems) and end < len(gems)):
if len(dic) == size:
if end - start < temp[1] - temp[0]:
temp = [start, end]
if dic[gems[start]] == 1:
del dic[gems[start]]
else:
dic[gems[start]] -= 1
start += 1
else:
end += 1
if end == len(gems):
break
if gems[end] in dic.keys():
dic[gems[end]] += 1
else:
dic[gems[end]] = 1
return [temp[0]+1, temp[1]+1]