python 빅데이터 기사 시험 단골 DataFrame데이터 프레임 안보면 손해

2022. 8. 29. 20:52빅데이터 파이썬 기반

728x90

 

만약 상관관계와 상관계수 공분산을 모르신다면 밑에 글을 먼저 보고 와 주세요 어려운 개념 아니고 아주 간단하고 

이해하기 쉽게 설명해놨습니다 ~~!

출처: https://rlagmlqja11.tistory.com/entry/상관-계수-와-상관-관계와-공분산-은-무엇인가요-100-만원-짜리-지식

[지식 있는 나그네:티스토리]

 

 

 

안녕하세요 오늘은 DataFrame 을 정리해보려고 하는데요 아주 간단하게 지금 까지 배운 것들 정리해보자면  

numpy : 다차원 으로 이루어진 배열 값

pandas : 일차원 배열로 이루어진 시리즈 값이라는 것을 알 수 있는데요

 

오늘은 빅데이터 시험에도 많이 나오고 그리고 인공 지는 또는 데이터 사이언티스트 라면 꼭 배워야 할 Data Frame

을 정리해보려 합니다 간단하게 저번에는 CRUD인 데이터 프레임을 약간 공부했었는데요 

 

오늘은 좀 더 심화된 방법들을 사용해서  설명하려고 합니다 Python Data Analytics_ With Pandas, NumPy, and Matplotlib

이런 외국책에서 한국 파파고를 돌려가면 공부한 것이니 진짜 귀한 자료 고 핵심만 정리해두었습니다

 

 

1 Python 두 개  딕셔너리로 데이터 프래임 만들기

밑에와 같이 두개의 딕셔너리 KEY값 안에 또다른 딕셔너리를 사용하여 값을만든경우 밑에와 같이 사용됩니다

nestdict = { 'red': { 2012: 22, 2013: 33 },
 'white': { 2011: 13, 2012: 22, 2013: 16},
 'blue': {2011: 17, 2012: 27, 2013: 18}}

df2 = pd.DataFrame(nestdict)
df2

 

 

2 Python 가장 작은 값과 가장 큰 값 index 뽑아내기

저는 시리즈를 따로 만들 어사 용했지만 값을 데이터 프레임 값을 시리즈로 만들어 뽑아 사용도 가능합니다!

# 가장 작은 값들을 산출 Series 중에
ser.idxmin()

# 가장 큰 값은 산출해내는 것 Series 중에
ser.idxmax()

( df.index.is_unique(시리즈 중 인덱스 값이 유니크하지 않은지 알아보기 )

(serd.index.is_unique(시리즈 중 인덱스 값이  유니크한지 알아보기)

 

 

 

3 Python DataFrame 람다식(lambda )으로 값 DataFraim 값들 색출해내기

위와 같이 Df라는 DataFraim을 만들었습니다 하지만 나는 각 행의 최소와 최댓값을 알고 싶다면

또는 어느 정도 분산돼있는 랑 평균값을 구하고 싶다면 어떻게 해야 할까요?

( 표준편차 구하는 함수. std() , 평균값. mean)

밑에처럼 자기 만든 데이터 프레임. apply를 한 후 람다식과 인덱스를 만들어 값을 만들어줄 수 있습니다

DataFraim.apply(lambda s:pd.Series([s.mean(), s.std()], index=['mean', 'std']), axis= "행마다면 1 열 마다면 0)

 

 

4 Python 상관계수와 공분수 구하기 

seq1 = pd.Series([1,2,3,4,4,3,2,1], ['2006', '2007', '2008', '2009', '2010', '2011', '2012', '2013'])

 seq2 = pd.Series([3,4,3,4,5,4,3,2], ['2006', '2007', '2008', '2009', '2010', '2011', '2012', '2013'])'2009','2010','2011','2012','2013'])

 

저는 이런 시리즈 값 두 개를 만들어줬다고 가정하겠습니다 

 

이런 시리즈 값을 두 개 만들었는데요

상관관계를 나타내는 함수는 DataFrame.corr(DataFraim2)

공분산을 나타내는 함수는   DataFrame.cov(DataFraim 2)

상관관계를 나타내 봤는데 상관계수가  1의 거의 가까운데요 그럼면 seq1과 seq2는 상관관계가 높다는

것입니다

한데 이 터프 레임을 데이터 상관계수로 나타내여 테이블 만들기

 

5 python Null 값 None 값 NaN 값 걸러내기

 

ser = pd.Series([0,1,2, np.NaN,9], ['red', 'blue', 'yellow', 'white', 'green'])

널값이 있는 시리즈 만들기

널값들 걸러서 데이터 뽑기

 

 

6 Python 데이터 프레임 Html의 tabal 로바꾸기

728x90