map 사용하기 |
- Series 에서는 map 함수를 사용할 수 있다.
from pandas import Series,DataFrame
import pandas as pd
import numpy as np
s1 = Series(np.arange(3),index=["row1","row2","row3"])
print(s1)
print(s1.map(lambda x : x*2)) # s1을 2배 한 수 출력
dic = {1:'A',0:'B'}
print(s1.map(dic)) #딕셔너리를 이용해서 해당 키값과 같으면 value로 변경 단,없으면 NaN
unique 사용하기 |
: unique 값만 추출하기
from pandas import Series,DataFrame
import pandas as pd
import numpy as np
s1 = Series([1,1,2])
print(s1)
print(s1.unique()) # Series의 unique
df1 = DataFrame([[1,2,3],[1,2,3],[3,2,1]],columns=["col1","col2","col3"],index=["row1","row2","row3"])
print(df1)
print(df1.col1.unique()) #col1 의 unique
print(df1["col1"].unique()) #col1 의 unique
print(df1.loc["row1"].unique()) #row1 의 unique
print(df1.iloc[0].unique()) #row1 의 unique
replace |
: map 함수의 기능중에서 데이터 변환만 담당
from pandas import Series,DataFrame
import pandas as pd
import numpy as np
df1 = DataFrame([[1,2,3],[1,2,3],[3,2,1]],columns=["col1","col2","col3"],index=["row1","row2","row3"])
print(df1)
print(df1.col1.replace({1:"A",2:"B",3:"C"})) #col1 값 변경
print(df1) #df1의 값은 남아 있다.
df1.col1.replace({1:"A",2:"B",3:"C"},inplace=True) #메모리값을 변경
print(df1) #df1의 값이 변경 되었다
apply |
: Series 전체에 해당 함수가 적용된다.
from pandas import Series,DataFrame
import pandas as pd
import numpy as np
df1 = DataFrame([[1,2,3],[1,2,3],[3,2,1]],columns=["col1","col2","col3"],index=["row1","row2","row3"])
print(df1)
f=lambda x : x.mean() #평균 값을 추출하자
print(df1.apply(f))
f=lambda x: -x
print(df1["col1"].apply(f))
describe |
- Numeric type 데이터의 요약정보를 보여줌
from pandas import Series,DataFrame
import pandas as pd
import numpy as np
df1 = DataFrame([[1,2,3],[1,2,3],[3,2,1]],columns=["col1","col2","col3"],index=["row1","row2","row3"])
print(df1)
print(df1.describe())
isnull |
: NaN 값의 여부 를 반환함
from pandas import Series,DataFrame
import pandas as pd
data = {"이름":["홍길동","이순신","강감찬","유관순"],
"나이":[10,20,30,40],
"몸무게":[40.5,72.1,91.3,50.1]}
df = pd.DataFrame(data,columns=["이름","나이","몸무게","키"])
print(df)
print(df.isnull()) #null 인지 아닌지 판단
print(df.isnull().sum()) #null 의 갯수
sort_values |
: Column 을 기준으로 데이터를 소트
from pandas import Series,DataFrame
import pandas as pd
data = {"이름":["홍길동","이순신","강감찬","유관순"],
"나이":[20,10,30,40],
"몸무게":[40.5,40.5,91.3,50.1]}
df = pd.DataFrame(data,columns=["이름","나이","몸무게","키"])
print(df)
print(df.sort_values(["몸무게","나이"])) #몸무게,나이 순으로 오름차순
print(df.sort_values(["몸무게","나이"],ascending=False)) #몸무게,나이 순으로 내림차순
corr |
: 상관계수를 구하는 함수(상관계수는 두 변수 사이의 직선 관계를 나타내는 지표로 -1~1 까지의 값이 나타난다.)
from pandas import Series,DataFrame
import pandas as pd
data = {"이름":["홍길동","이순신","강감찬","유관순"],
"나이":[20,10,30,40],
"몸무게":[40.5,40.5,91.3,50.1]}
df = pd.DataFrame(data,columns=["이름","나이","몸무게","키"])
print(df)
print(df.나이.corr(df.몸무게)) #나이와 몸무게의 상관관계를 확인하자
cov |
: 공분산을 구하는 함수(공분산은 2개의 연속형변수의 관계성을 확인하는 통계량)
from pandas import Series,DataFrame
import pandas as pd
data = {"이름":["홍길동","이순신","강감찬","유관순"],
"나이":[20,10,30,40],
"몸무게":[40.5,40.5,91.3,50.1]}
df = pd.DataFrame(data,columns=["이름","나이","몸무게","키"])
print(df)
print(df.나이.cov(df.몸무게)) #나이와 몸무게의 공분산을 확인하자
corr |
: 상관계수를 구하는 함수(두 변수 사이의 상관관계이 정도를 나타내는 수치)
from pandas import Series,DataFrame
import pandas as pd
data = {"이름":["홍길동","이순신","강감찬","유관순"],
"나이":[20,10,30,40],
"몸무게":[40.5,40.5,91.3,50.1]}
df = pd.DataFrame(data,columns=["이름","나이","몸무게","키"])
print(df)
print(df.나이.corr(df.몸무게)) #나이와 몸무게의 상관계수을 확인하자
이 문서는 학생들과 함께 딥러닝 공부를 하기 위해 만든 문서이며~
딥러닝 공부 전에 Numpy와 Pandas 의 기본을 알고 머신러닝을 공부하면 대부분의 머신러닝 소스코드들을 바라보는데 이해의 폭이 넓어질 것 같아서 이론 후 실습 전에 Numpy와 Pandas 의 기본 문법들을 정리해 보았습니다.
더욱 자세한 내용은 데이터 사이언스 스쿨을 참고하시면 많은 정보를 얻으 실 수 있을것 같습니다.
[참고]
사업자 정보 표시
원당컴퓨터학원 | 기희경 | 인천 서구 당하동 1028-2 장원프라자 502호 | 사업자 등록번호 : 301-96-83080 | TEL : 032-565-5497 | Mail : icon001@naver.com | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기
'강의자료 > 머신러닝' 카테고리의 다른 글
[딥러닝파이썬] 02-5.파이썬의 Pandas를 다뤄 보자. (8) | 2022.06.08 |
---|---|
[딥러닝파이썬] 02-4.파이썬의 Pandas를 다뤄 보자. (11) | 2022.05.24 |
[딥러닝파이썬] 02-2.파이썬의 Pandas를 다뤄 보자. (4) | 2022.05.09 |
[딥러닝파이썬] 02-1.파이썬의 Pandas를 다뤄 보자. (9) | 2022.05.03 |
[딥러닝파이썬] 01-4.파이썬의 numpy를 다뤄 보자. (5) | 2022.04.25 |