์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- dataframe
- ํฌ๋กค๋ง
- ํ์ด์ฌ
- LDA
- ์๋ํด๋ผ์ฐ๋
- DBSCAN
- datascience
- ๋น ๋ฐ์ดํฐ
- ๊ตฐ์งํ
- ๋ฐ์ดํฐ๋ถ๊ท ํ
- opencv
- ํ ์คํธ๋ถ์
- t-test
- ๋ฐ์ดํฐ๋ถ์
- ์ธ๋์ํ๋ง
- ๋ฐ์ดํฐ๋ถ์์ค์ ๋ฌธ๊ฐ
- ์ฃผ์ฑ๋ถ๋ถ์
- PCA
- Lambda
- ADsP
- ๋์ํ๋ณธ
- iloc
- ADP
- ๋น ๋ฐ์ดํฐ๋ถ์๊ธฐ์ฌ
- Python
- numpy
- ์ค๋ฒ์ํ๋ง
- ๋ฐ์ดํฐ๋ถ์์ ๋ฌธ๊ฐ
- ๋ ๋ฆฝํ๋ณธ
- pandas
Data Science LAB
[Python] ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ ์ฐ์ต level2 (H-index) ๋ณธ๋ฌธ
[Python] ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ฉํ ์คํธ ์ฐ์ต level2 (H-index)
ใ ใ ใ ใ 2022. 11. 27. 16:491. ๋ฌธ์ ์ค๋ช
H-Index๋ ๊ณผํ์์ ์์ฐ์ฑ๊ณผ ์ํฅ๋ ฅ์ ๋ํ๋ด๋ ์งํ์ ๋๋ค. ์ด๋ ๊ณผํ์์ H-Index๋ฅผ ๋ํ๋ด๋ ๊ฐ์ธ h๋ฅผ ๊ตฌํ๋ ค๊ณ ํฉ๋๋ค. ์ํค๋ฐฑ๊ณผ1์ ๋ฐ๋ฅด๋ฉด, H-Index๋ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌํฉ๋๋ค.
์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ nํธ ์ค, h๋ฒ ์ด์ ์ธ์ฉ๋ ๋ ผ๋ฌธ์ด hํธ ์ด์์ด๊ณ ๋๋จธ์ง ๋ ผ๋ฌธ์ด h๋ฒ ์ดํ ์ธ์ฉ๋์๋ค๋ฉด h์ ์ต๋๊ฐ์ด ์ด ๊ณผํ์์ H-Index์ ๋๋ค.
์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์ธ์ฉ ํ์๋ฅผ ๋ด์ ๋ฐฐ์ด citations๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด ๊ณผํ์์ H-Index๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
2. ์ ํ ์ฌํญ
- ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์๋ 1ํธ ์ด์ 1,000ํธ ์ดํ์ ๋๋ค.
- ๋ ผ๋ฌธ๋ณ ์ธ์ฉ ํ์๋ 0ํ ์ด์ 10,000ํ ์ดํ์ ๋๋ค.
3. ๋ด ํ์ด
def solution(citations):
for i in range(len(citations),-1, -1):
new = len(list(filter(lambda x: x >=i, citations)))
if new >= i and len(citations) - new <= i:
return i
1. citations ๋ฆฌ์คํธ๋ด์ ์์์ ๊ฐ์ ๋ถํฐ 0๊น์ง ๋ฐ๋ณต (-1 ์ฌ์ฉํด์ reverse)
2. ๋ฆฌ์คํธ ๋ด์ ์์ ์ค i๋ณด๋ค ํฐ ์์๋ง ๋ฐํํ ๋ค ์ด ๊ฐ์ ์ธ๊ธฐ
3. ๋ฐํ๋ ์ด ๊ฐ์๊ฐ i ๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ ๋ฐํ๋์ง ์์ ์์์ ๊ฐ์๊ฐ i๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ผ๋ฉด i ๋ฐํ
range๋ฅผ ์ฌ์ฉํด์ ๋ฐ๋ณต๋ฌธ์ ๋๋ฆด๋ (len(citations), 0, -1)๋ก ์ค์ ํ๋ฉด ๋ง์ง๋ง ๋ฐ๋ณต์์ i๊ฐ 1์ด๋๋ฏ๋ก 0์ ๊ณ ๋ คํ์ง ๋ชปํจ (์ฃผ์)
4. ๋ค๋ฅธ ์ฌ๋ ํ์ด
def solution(citations):
citations.sort(reverse=True)
answer = max(map(min, enumerate(citations, start=1)))
return answer
1. citations ๋ฆฌ์คํธ ์ ๋ ฌ (์ญ์์ผ๋ก)
2. enumerate() ํจ์๋ฅผ ์ฌ์ฉํด citations ๋ฆฌ์คํธ ๋ด์ ์๊ธฐ ์์ ๋ณด๋ค ํฐ ์๊ฐ ๋ช๊ฐ ์กด์ฌํ๋ ์ง countํ์ฌ ๊ฐ์ฅ ํฐ ์ ๋ฐํ