- Today
1. ADsP 강의 정리(인공신경망 분석)
2. SQL 코드카타
3. 파이썬 강의 듣기
- Today I Learned
SQL
같은 테이블에서 값 뽑아주기
WITH ta AS (
SELECT DISTINCT a.author_id, b.viewer_id
FROM views AS a
JOIN views AS b
ON a.author_id=b.viewer_id
)
SELECT author_id AS id
FROM ta
ORDER BY 1 ASC
# Output 만 보고 어거지로 뽑아낸 값..
# 어제 SQL 세션에서 배웠던 distinct 컬럼1,컬럼2 를 활용해봤는데 틀렸음 ㅠㅜ!
# self join 을 해야하는 것은 알겠는데, 방법을 다시 찾아봐야겠다
SELECT DISTINCT a.author_id AS 'id'
FROM views AS a, views AS b
WHERE a.author_id=b.viewer_id
ORDER BY 1 ASC
# JOIN 을 하지 않고 CROSS JOIN 을 하는 것도 있었구나 해서 작성해봤으나 틀렸음..
SELECT DISTINCT author_id AS 'id'
FROM views
WHERE author_id=viewer_id
ORDER BY 1 ASC
정답이 굉장히 허탈하다 ,,^^
그냥 WHERE 절 안에서 찾아줘도 됐던 것 ..
두개의 답을 찾는게 아니라.. 그냥 어쨌든 1번 읽어봤던 작성자를 찾는거라 ㅠㅠ
하.. 너무 꼬아서 생각했나봄
다음엔 제대로 풀어야지!!
파이썬
파이썬에서 문자를 사용할 때에는 "" , '' 로 선언
> 둘다 쓰는 이유는 Alice's something 와 같이 문자열 사이에 ' 작은 따옴표가 있는 경우에 "" 로 사용
accuracy
: 정확도
: ai 모델 성능 평가 등에서 사용
=
: 같다 보다는 무언가를 담는다 라고 생각하는 것이 좋다!
Sequence Type
: 순서대로 나열된 자료형
: 문자, 리스트 ,튜플
: 100 이라는 숫자는 숫자 그 자체
type 함수
: 변수의 자료형을 확인할 수 있다.
# 변수의 자료형 확인
print(type(age)) # <class 'int'> 출력
print(type(name)) # <class 'str'> 출력
정수(int), 실수(float), 문자열(str), 리스트(list), 튜플(tuple), 딕셔너리(dict), 불리언(bool) 등
정수: 딱 떨어지는 수, 소수점 이하의 부분이 없는 숫자
실수: 정수+소수점포함+음수포함
나눗셈 연산자
/ | 실수로 결과 반환 (float) |
// | 정수로 결과 반환 (int) |
% | 나머지 |
>> 딥러닝을 할 때 반복학습을 해주어야 한다.
" 결과를 3번에 한번~ 10번에 한번정도만 출력해줘"
" 해당하는 횟수에 계산해줘" 등에서 사용할 수 있음
abs
절댓값(부호 제외하고 출력)
0 * 실수
= 0.0(float)
input()
사용자로부터 무언가의 값을 입력받고자 할 때
Q.sort(reverse=True)와 reverse( ) 의 차이?
A.
# sort(reverse=True) 내림차순
list = [1,5,2,3,4]
list.sort(reverse=True)
>> [5,4,3,2,1]
# reverse() 리스트의 자료를 뒤집는다
list = [1,5,2,3,4]
list.reverse()
>> [4,3,2,5,1]
튜플
: 추가, 삭제, 수정이 불가
: 불변해야하는 정보, 개인정보 등을 사용
딕셔너리
: key 값을 통해 각각 데이터를 저장 할 수 있음
: 데이터를 사전처럼 저장하고 싶을 때, pandas 사용하기에 좋음
dict_keys()
> 모든 키를 반환
dict_values()
> 모든 값을 반환
dict_items()
> 모든 키-값 쌍을 (키,값) 튜플로 반환
print(i,end = ' ')
>> end 로 지정해주면 저 뒤에 인자를 반환해준다!
# 결측치 처리 예시
data = [10, 20, None, 30, 40, None, 50]
cleaned_data = []
for d in data:
if d is not None:
cleaned_data.append(d)
print(cleaned_data)
Q. 결측치 처리를 할 때 not None를 해주는데
파이썬에서는 결측치가 None 인지?
A. 튜터님 멘토링 내용
* 위의 코드는 for 반복문에서 사용가능한 형태로 보여주기 위해 예시로 작성한 것
* 현업에서 결측치는 보통 NaN 형태이다.
* 결측치 처리를 할 때에는 보통 판다스로 결측치를 확인하고, 처리 해준다
참고 ) https://jimmy-ai.tistory.com/162
while 문
: 조건이 있고, 그 조건이 참 일 때만 반복을 한다.
: 조건 은 불리언 값(True 또는 False) 을 반환하는 표현식
continue
# 반복문으로 돌아가는 것
pass
# 그냥 지나가는 것
Daily Scrum
UNION
은 컬럼명과 형식이 같아야 하기 때문에
별칭을 해서 컬럼명을
WHERE 절이 먼저 실행 되기 때문에
유니온을 하기 전 각 테이블에서 where 절에서 먼저 조건을 줘야 한다
SELECT *
FROM 테이블1,테이블2
WHERE 조건
> INNER JOIN 과 같음
처리속도가 빠르다
where 절을 써서 조건절로 걷어내야한다.
> 잘 쓰지 않는 문장이기 때문에 INNER JOIN 을 주로 사용
- Next
1. SQL 코드카타
2. 파이선 종합반 강의 완강
3. SQL 코드카타 복습
4. ADsP 강의
'TIL' 카테고리의 다른 글
2024-04-29 (0) | 2024.04.29 |
---|---|
2024-04-26 (0) | 2024.04.26 |
2024-04-24 (0) | 2024.04.24 |
2024-04-23 (0) | 2024.04.23 |
2024-04-22 (1) | 2024.04.22 |