-
코드카타 / 파이썬 / pandas[스파르타코딩클럽]데이터분석 과정/TIL,WIL 2024. 2. 5. 20:48
SQL 코드카타
12세 이하인 여자 환자 목록 출력하기
12세 이하인 여자 환자의 환자이름, 환자 번호, 성별코드,나이, 전화번호를 조회
전화번호가 없는 경우 none으로 출력
나이를 기준으로 내림차순, 나이가 같다면 환자 이름을 기준으로 오름차순- 12세 이하 : between 0 and 12
- 여자 환자 : GEND_CD = 'W'
- 전화 번호가 없는 경우 ->IFNULL
- NONE -> (TLNO,"NONE")
- 정렬 : ORDER BY
- 내림차순 : DESC
- 오름차순 : ASC
SELECT PT_NAME, PT_NO, GEND_CD, AGE, IFNULL(TLNO, "NONE") TLNO FROM PATIENT WHERE AGE BETWEEN 0 AND 12 AND GEND_CD = 'W' ORDER BY AGE DESC, PT_NAME ASC;
Biggest Single Number
단일 숫자는 테이블에 한 번만 나타나는 숫자
가장 큰 단일 숫자 찾기
단일 번호가 없으면 신고- 가장 큰 : max
- 숫자별로 : group by
- 1번만 나타남 : count
SELECT MAX(num) AS num FROM ( SELECT num FROM MyNumbers GROUP BY num HAVING COUNT(num) = 1 ) as unique_numbers;
Average Population
인구의 평균 구하기
가까운 정수로 내림- 평균 구하기 : AVG
- 내림 : round
select round(avg(population)) from city;
파이썬 코드카타
덧칠하기
정수 n,m과 다시 페인트를 칠하기로 정한 구역들의 번호가 담긴 정수 배열 section이 매개변수로 주어질 때 롤러로 페인트칠해야 하는 최소 횟수를 return 하는 solution 함수- 빈 값이 아니라면 계속 실행 : while
- 첫 값에 m 더하기 : section[0] + m
- 첫 값 삭제 : pop
def solution(n, m, section): answer = 0 while section: #빈값이 아니라면 계속 실행 #첫 값에 m 더하기 b = section[0] + m #section 존재, 첫 값이 b보다 작다면 반복 while section and section[0] < b: #첫 값 삭제 section.pop(0) answer += 1 return answer
기사단원의 무기
기사단원의 수를 나타내는 정수 number와
이웃나라와 협약으로 정해진 공격력의 제한수치를 나타내는 정수 limit와
제한수치를 초과한 기사가 사용할 무기의 공격력을 나타내는 정수 power가 주어졌을 때,
무기점의 주인이 무기를 모두 만들기 위해 필요한 철의 무게를 return 하는 solution 함수- 약수 구하기 -> 제곱근보다 작은수 + 반쪽 + cnt +=2
def solution(number, limit, power): answer = 0 #철의 무게 kg=[] #약수 구하기 -> 제곱근보다 작은 수 + 반쪽 + cnt += 2 for i in range(1,number+1): cnt=0 for j in range(1,int(i**0.5)+1): if(i%j==0): cnt+=2 if j**2==i: cnt-=1 if cnt>limit: cnt=power break kg.append(cnt) return sum(kg)
파이썬
- enumerate
- 반복문 사용 시 몇 번째 반복문인지 확인이 필요할 수 있음
- 인덱스 번호와 컬렉션의 원소를 typle형태로 반환
- replace
- replace(바꿀 대상, 바꾸려는 문자열)
- 문자열 바꾸기
Pandas
- 시각화
line: 선그래프
bar: 바 그래프
barh: 수평 바 그래프
hist: 히스토그램
kde: 커널 밀도 그래프- 히스토그램과 유사하게 밀도를 보여주는 그래프- 히스토그램고 유사한 모양새를 갖춤- 부드러운 라인df['분양가'].plot(kind='kde')
hexbin: 고밀도 산점도 그래프- 고밀도 산점도 그래프
- x와 y키 값을 넣어주기- x,y 값 모두 numeric한 값을 넣어주기- 데이터의 밀도를 추df.plot(kind='hexbin', x='분양가', y='연도', gridsize=20)
box: 박스 플롯- IQR : 3Q - 1Q * 1.5
pie: 파이 그래프df.groupby('연도')['분양가'].count().plot(kind='pie')
scatter: 산점도 그래프- 점으로 데이터를 표기해 줌- x,y 값을 넣어줌- x축과 y축을 지정해주면 그에 맞는 데이터 분포도 볼 수 있음- numeric한 column만 지정'[스파르타코딩클럽]데이터분석 과정 > TIL,WIL' 카테고리의 다른 글
심화프로젝트 (0) 2024.02.07 코드카타/심화프로젝트 (1) 2024.02.06 KDT 실무형 데이터 분석가 양성과정 7주차 (0) 2024.02.02 머신러닝 5/ 코드카타 / pandas (0) 2024.02.02 머신러닝 4/ 코드카타 / 판다스 (0) 2024.02.01