1. 리스트로 만드는 2차원 세계!!!
코랩 링크 : https://colab.research.google.com/drive/199MmXCw4ejktCyw3lGbjE3RHS5BR7fkY?usp=sharing
## **리스트로 만드는 2차원 세계!!!!!!!!!!!!!!!!!!!!!!!!!**
데이터프레임(판다스 말인듯)으로 불러와도
결국 넘파이 배열로 바꿔서 리스트 형식으로 하게 될테니까
이거 잘 알아둬야 한다고 한다.
리스트 안에 리스트들이 만드는 2차원의 개념을 잘 알아두라고 한다.
코드
X=[['홍','유'],[100,300]]
print(X)
#X에서 제로는 홍유가 들어간 리스트 덩어리
X[0]
print('X[0]:{}'.format(X[0]))
# 홍만 뽑고 싶으면
print('X[0][0]:{}'.format(X[0][0]))
출력
[['홍', '유'], [100, 300]]
X[0]:['홍', '유']
X[0][0]:홍
-----------------------------------------
2. 판다스 (아주 궁금하다)
데이터 전처리를 NumPy, pandas library 로 한다고 함.
행과 열로 구성이 되어있는 데이터 프레임 타입 데이터를 입력, 처리, 조작할 때
판다스를 쓴다. cvs파일을 불러와서 행과 열의 데이터 프레임으로 구성해주는 것!!!
함수는 read.csv !!!
import pandas as pd
pd.read.csv(파일이름.csv)
에구 다 날라갔네
(하여간 포인트는 결측값제거, 결측값 특정값이나 평균값으로 채우기, 카피 등을 했을 때
새 변수 (새 이름)에 저장하지 않으면 반영이 안된다 였다.
https://blogs.nvidia.co.kr/2020/02/27/intuitive-ai-schools-you-on-recycling/
-----------------------------------------
3. 넘파이
판다스로 불러온 행열값의 "계산"을 위한 라이브러리!
1) 가장 많이 사용하는 것은 unipue!!!!!!!!!!!!
유일한 원소로 정렬해준다.
len(np.unique(list(df.Name))
names=list(d.Name)
for i in range(len(names)):
names[i]=names[i].split*'',1)
#공백이 여러번 나오지만 한 번만 분할 하겠고
name[0] 값을 name[i]에 저장해줘
# 나: 성을 떼어 저장하는 건가보넹??
clean_data.Name=names
clean_data.head()
len(np.unique(list(clean_data.Name)))
2) 실습
import numpy as np
a=[1,1,1,1,3,4,4,5,9,3,3,6,6]
print(np.unique(a))
# 출력
[1,3,4,5,6,9]
# 이렇게 중복 값 처리 + 순서대로 정렬 됨
print(np.mean(a))
# a자리가 배열이어야 하는 자리임!
4. 사이킷런
선형회귀에 필요한 것!! (liner regression)
학습 알고리즘을 갖고 오고 fit으로 학습까지 시킨다.
코랩링크
https://colab.research.google.com/drive/1hhATWqwaubP5MSK59H8JlfOHWu3yFvsa?usp=sharing
5. matploib
시각화 그래프화!!
import matplotlib.pyplot as plt
# plt.plot[1,2,3,4,5] 하나만 쓰면 y값이 디폴트
# plt.plot([2,3,4,5],[6,7,8,9]) # 두 개 다쓰면 앞이 x 뒤가 y 값
# TIP 스캐터는 산점도 여기에 트레인 인풋, 타겟 이런 거 넣으면 매칭값이 보임
# TIP 플롯은 방정식 그래프 그리기
import matplotlib.pyplot as plt
plt.plot([1,2,3,4],[1,4,9,16])
plt.ylabel('y-label')
plt.show
plt.scatter([2],[4],marker='^')
y 아규먼트 어쩌구 오류가 나서 여쭤보는 중
코랩링크
https://colab.research.google.com/drive/1hhATWqwaubP5MSK59H8JlfOHWu3yFvsa?usp=sharing
6. 선형회귀
1)
원인 과 결과 로 예측하기
과거 재배면적 - 가격 데이터
현재 재배면적 - 가격 ? 예상
(햄스터가 말한 주식 얘기 생각남)
2) 여러변수가 관계를 대표하는 하나의 선을 찾는 것!
단순선형회귀
다중선형회귀 (3개 이상의 독립변수! 1개의 종속변수!)
x값이 예측변수, 독립변수이고
y값이 결과, 반응, 종속변수 예측하려는 변수
예
감기와 기온간의 관계가 있나.
3) 엄밀히는지도학습이다!!!
4) 온도 값 데이터를 x값에 감기 환자수를 y 값에 저장한다.
사이킷런의 linear regressiong 클래스로 모델 생성하고
fit 써서 훈렌하고
predict로 예측한다.
5) 실습
#-------------------판다스로 데이터를 행렬로 저장하기
import pandas as pd
temp_predict=pd.read_csv('/content/선형회귀1 - 복사본.csv')
temp_predict # 교수님이 주신 파일이 좀 다르고 하여간 칼럼명에 한글 있으면 깨져서 대충 써넣었다.
CSV파일명이 한글인 것은 상관 없다.
#-------------------이제 넘파이를 쓴다.
import numpy as np
train_input=temp_predict[['temp']].to_numpy()
train_target=temp_predict[['couny']].to_numpy()
# 이게 궁금했던 부분 같다.
# 판다스로 불러와서 넘파이로 저장하는 것은
# 판다스 프레임의 인덱스번호나 인덱스 키로 부른다음 투 넘파이 하기
# [[]]왜 두 개쓰지? 하나만 있으면 하나의 리스트가 되긴한다.(질문 중)
1에 가까워야 하고
0이면 별로
심지어 0밑이면 아주 별로
https://jfun.tistory.com/81
6. 다중선형회귀
선형회귀와 코드만으로는 큰 차이가 없다.
독립변수가 여러 개라 더 흥미로운 편인 것 같다.
https://colab.research.google.com/drive/1hhATWqwaubP5MSK59H8JlfOHWu3yFvsa?usp=sharing
댓글
댓글 쓰기