본문으로 바로가기

지난번 pandas의 series[바로가기]에 이어서 다시 이번에는 DataFrame 이야기를 할려고 합니다. 이번 글도 역시 GitHub에서 발견한 예제[바로가기]를 그냥 따라하는 수준의 이야기인데요. 알고 봤더니 이게 한 책의 예제입니다.ㅠㅠ. ["Python for Data Analysis" by Wes McKinney, published by O'Reilly Media]라는 책의 예제를 저자께서 GitHub에 올린걸 무식한 PinkWink가 얼씨구나 하고 사용하는 거더군요.ㅠㅠ. 일단은 이렇게 출처를 밝히구요.ㅠㅠ. 다음에는 나름대로 가공해서 예제를 이야기해야겠어요. 이래서 출처는 꼭 적어야합니다.ㅠㅠ. 그러나.. 공개된 GitHub의 내용을 출처를 알리고 소개하므로 뭐 나름 의미있는 행동이라고 대충 생각하는 중입니다.ㅠㅠ.

언제나 그렇듯 pandas를 import하구요. 사전형식으로 data를 선언하네요. 그 내용에는 state와 year, pop이 있네요. 그리고 이것을 DataFrame으로 선언하면 위와 같은 마치 엑셀처럼 정리가 됩니다. IPython의 저 표현이 살짝 마음에 드네요...^^ 진짜 표같아서 말이죠^^

그리고 DataFrame에서 columns 속성에서 index의 순서를 변경해 줄 수 있습니다.

이번에는 0,1,2,3,4하는 인덱스를 변경한것이구요. columns에서 debt가 추가되었네요. 그러나 값은 없어서 NaN이 들어가 있군요.

특정한 열의 값을 가져와서 볼 수 있습니다.

행의 값을 확인하는 것은 ix 속성을 사용하면 됩니다.

아까 NaN이었던 debt에 값을 인가하는 방식이네요^^

또 다른 방식이기도 하구요.^^

혹은 index를 지정하고 직접 값을 입력해도 가능하네요^^

저런 표현.. 참 재미있습니다. frame2['eastern'] = frame2.state == 'Ohio' 와 같은 표현 말이죠.^^. frame2의 state가 Ohio이면 True, 아니면 False를 eastern이라는 열에 배치하라는 것을 저렇게 한 줄로 .... 그리고 이해하기 쉽게 입력할 수 있네요^^

열 속성을 지울 수 있네요^^.

DataFrame도 numpy의 transpose처럼 행과 열을 바꿀 수 있습니다.

또한... 역시 numpy처럼 특정 범위만 DataFrame으로 구성하능하죠..

또 열과 행 자체에 이름(name)을 지정할 수 있습니다.

또 재미있는 표현처럼 obj2.index is index라는 것도 재미있죠. ㅎㅎ. 뭐 아무튼 그렇다는 겁니다.^^


댓글을 달아 주세요

  1. BlogIcon 핑구야 날자 2015.04.29 08:20 신고

    오늘 비가 오네요~~ 하루 잘 보내세요

  2. BlogIcon 바이블맨 2015.05.28 07:59 신고

    안녕하세요. 사실 제가 저 책을 사서 보고 있는데... 그 책보다 더 이해가 잘 가게 설명 하 주셨네요. 감사 드립니다

  3. 광진구훈남 2015.07.25 16:23 신고

    오늘도 잘 보고갑니다!!!
    언제나 감사해요^^

  4. 지나가던 2016.08.18 00:43 신고

    과제하는데 정말 많은 도움이 되었습니다 ㅎㅎ 감사합니다

  5. 김승영 2017.07.30 20:41 신고

    개인적으로 파이썬을 공부하고 있는데 너무 궁금한 점이 있어서 이렇게 질문드립니다. 제가 ipython으로 dataframe을 쓰면 pinkwink님이 하신것 같은 이쁜 표가 나오지를 않습니다.. 데이터는 전부 나오지만 이쁘게 나오지 않아서 너무 찝찝합니다ㅠ 혹시 따로 설정이 필요한걸까요?

    • BlogIcon PinkWink 2017.07.31 07:01 신고

      이쁘지 않다는건 어떤건가요?^^
      혹시 Anaconda를 설치하신거라면... 지금 화면처럼 나오거나 더 이쁘거나(^^)할 텐데요...^^

  6. rock 2017.09.05 20:34 신고

    좋은정보 너무나 감사드립니다^^ 결과가 바로 있으니 이해가 바로 되네요