본문 바로가기

Theory/DataScience

Python pandas에서 text 혹은 csv 파일 읽기

반응형

뭐... Python에서 text를 읽는 다는 건.. 아주 쉬운 많은 방법이 있어보입니다만, 오늘은 pandas로 읽는 명령하나(^^)를 소개할까 합니다. pandas에서 바로 읽으면 뭐.. 당연한 이야기지만, DataFrame에서 바로 작업이 가능하니 괜찮거든요^^

^^ 심플한 import 작업이지요^^

요렇게 생긴 데이터 파일을 읽어볼까 합니다. 내용은 숫자로 팍팍 채워져 있네요^^

명령은 아주 단순하게 하나입니다.~~~ pd.read_csv^^ 그리고 각 columns의 이름을 names로 지정해주면 됩니다.

지정된 컬럼 이름으로 데이터들이 잘 로딩되었음을 알 수 있네요^^

앞부분 10개만 읽어보면~ 뭐 당연히 잘~~^^

무턱대고 그냥 plot을 해보면  됩니다. 좀 이상해서 그렇지^^

넵... legend의 위치(loc)를 잡아주고.... 형태도 잡아주면 저렇게 뜨네요~~~~

당연히 원하는 것만 또 plot이 가능하네요^^

반응형
  • BlogIcon 핑구야 날자 2016.11.18 07:25 신고

    텍스트를 리딩하는 방법이군요 잘보고 갑니다

  • BlogIcon 감자튀김 2016.11.19 16:33 신고

    이런 방법이 있군요~ 많이 배우고 갑니다. ^^

  • 행복한 밤되세요

  • BlogIcon IT세레스s 2016.11.21 03:25 신고

    항상 파일을 읽어오는건 조금 어렵던데 설명 감사드려요.^^

  • 겨울에는얼음 2018.02.09 10:25

    matlab 공부 할 때도 pinkwink님 자료를 보면서 공부를 했었는데, 파이썬도 마찬가지네요.^^
    아래와 같은 형태의 tab으로 구분된 자료를 pandas에서는 어떻게 읽게 되나요?
    1 2 3 4
    5 6 7
    파이썬에서 제공하는 split 함수로는 두번 째 line을 list로 반환을 하면 [5,6,7], 즉 공백을 무시하고 읽게되더라고요. 공백을 인지하고 pandas에서는 리스트를 [[],6,7] 이런식으로 읽을 수 있을까요?

    • BlogIcon PinkWink 2018.02.09 18:41 신고

      꽤 특이한 경우인가 보군요...
      안해봤지만~~
      그냥 한줄씩 string으로 읽어서
      char로 하나씩 저장하는 것은 어떨까요...

  • o.o 2018.04.28 16:39

    혹시 csv파일은 어떻게 오픈해야하나요?

    txt파일은 알려주신대로하면 열리는데

    csv파일은 오류가나네요

    • BlogIcon PinkWink 2018.04.28 23:04 신고

      어떤 오류가 나던가요???

    • ㅇ.ㅇ 2018.04.29 16:18

      data = pandas.read_csv("aaa.csv")
      data.head(8)

      해서 csv파일을 열려고합니다.

      csv파일위치는 파이썬에 넣어뒀습니다

      실행을하면 unicodeDecodeError 에러가 납니다 ㅠㅠ

    • ㅇ.ㅇ 2018.04.29 16:22

      UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 0: invalid start byte

      이오류입니다 ㅠㅠ

      파이썬3입니다.

    • o,o 2018.04.29 16:31

      Data = pandas.read_csv('전국공공시설개방표준데이터.csv',engine='python'encoding="utf-8")
      Data.head(8)

      위와같이 하니깐 오류가 바뀐거같습니다

      File "<ipython-input-9-6bae78b45e0e>", line 1
      Data = pandas.read_csv('전국공공시설개방표준데이터.csv',engine='python'encoding="utf-8")

      SyntaxError: invalid syntax

      그런데 밑과같은오류인데 어떤게 잘못된건가요 재차물어봐서 죄송합니다 ㅠㅠ

    • BlogIcon PinkWink 2018.04.30 10:19 신고

      네.. 텍스트 인코딩을 설정해주어야합니다.

    • BlogIcon PinkWink 2018.04.30 10:19 신고

      흠.. .utf-8을 아닌듯하네요^^

    • BlogIcon PinkWink 2018.04.30 10:20 신고

      utf8대신에 euc-kr도 한 번 사용해보시지요. 한글은 요즘은 그 둘 중 하나인듯 한데요.

  • 승찬 2019.10.07 16:58

    안녕하세요! 유용한 정보 정말 많네요! 실습하다가 잘안되서 글남 깁니다.
    import 에서 사용하는 선언 등을 PIP 인스톨은 다하였습니다.
    저기서 %matplotlib.pyplot as plot 명령어를 사용하면
    % 문자가 분홍색으로 처리되면서 에러가 계속 납니다.
    글쓴이 분처럼 %문자가 보라색으로 변하지도 않네요 혹시 해결 가능 할까요 ㅠ

    import pandas as pd
    import numpy as np
    import matplotlib.pyplot as plt
    %matplotlib inline
    rawData = pd.read_CSV('data.txt', names=['a','b'])
    rawData.info()
    rawData.head(10)

  • 익명 2019.10.07 17:00

    비밀댓글입니다

  • 망자 2019.11.24 01:59

    안녕하세요. 현재 아나콘다로 엑셀을 정리하여 과제중인 학생입니다. 궁금한점이 생겨 질문을 하고자 합니다.
    내용은 식당에서 쓴 돈이 얼마나 되는지를 조사하여 제일 많이 찾은집과, 각 식당마다 얼마나 돈을 썼는지에 대해서입니다.
    1. 아나콘다에서 엑셀을 읽은후에 엑셀파일 내의 셀 중에서 같은 내용의 셀이 있다면(즉 같은 식당의 이름)셀이 몇개나 중복이 되는지 아나콘다내에서 코딩으로 추가할수도 있을까요?
    2. 각 식당을 검색하여 구글 지도에서 읽고 아나콘다내에서 보여주려고 합니다.
    이름만 검색하는것으로 위치를 찾을수있을까요?

    • BlogIcon PinkWink 2019.11.25 00:17 신고

      댓글로 다 답변하기는 어려울것 같습니다. 일단 두번째에 대한 답은 구글 지도를 이용하시면 좋습니다. 구글 맵은 검색어만 가지고도 위도/경도 정보를 주기 때문에 지도에 표시하기 좋습니다.

  • 망자 2019.11.25 15:07

    감사합니다. 2번은 해결된것 같습니다.
    1번문제 재 질문입니다만 8장의 자연어 처리에서 단어 언급 횟수를 응용해서 쓰려는데 교재에선 텍스트 파일을 썼지만 엑셀파일을 입력하려 할때는 어떻게 써야 할지 알고싶습니다..