• 회원가입
  • 로그인
  • 구글아이디로 로그인

[pandas] Python - Pandas Read JSON (JSON 읽기)

3890  
목차
  1. JSON 소개
  2. JSON 읽기
  3. dictionary를 JSON처럼 사용

 

JSON 소개

 

1.

큰 데이터는 종종 JSON 형태로 저장/추출됨.

 

2.

JSON은 일반 텍스트이지만 객체 형식 가짐.

 


[예제] ※ JSON 구문

C:\Users\사용자명\AppData\Local\Programs\Python\Python39\data.json

 

{

  "id":{

    "0":"sinbi",

    "1":"homzzang",

    "2":"momo",

    "3":"sana",

    "4":"soso"

  },

  "nick":{

    "0":"신비",

    "1":"홈짱",

    "2":"모모",

    "3":"사나",

    "4":"소소"

  },

  "level":{

    "0":3,

    "1":10,

    "2":2,

    "3":3,

    "4":4

  },

  "point":{

    "0":1000,

    "1":2000,

    "2":null,

    "3":3000,

    "4":4000

  }

}


 

JSON 읽기

 

pd.read_json() 메서드 : JSON 데이터 파일 읽기.

print(df.to_string()) : JSON 데이터 전체 출력.

ps. 

to_string() 부분 없으면,  데이터 많을 시, 맨 앞 5개, 맨 뒤 5개만 출력.

 


[예제]

 

import pandas as pd

df = pd.read_json('data.json')

print(df.to_string()

 

결과값:

         id nick  level   point

0     sinbi   신비      3  1000.0

1  homzzang   홈짱     10  2000.0

2      momo   모모      2     NaN

3      sana   사나      3  3000.0

4      soso   소소      4  4000.0


dictionary를 JSON처럼 사용

 

1.

JSON은 Python의 dictionary 구문 형식과 거의 동일. 

그 결과,

JSON 코드가 파일이 아니라 Python dictionary에 있는 경우 DataFrame에 직접 로드 가능.

 

2.

단, 값이 없는 경우, JSON과 Python dictionary 처리 방식 다름.

※ JSON 구문 경우 : null 사용. (결과값: NaN)

※ Python dictionary 구문 경우 : None 사용. (결과값: NaN)

 


[예제]

 

import pandas as pd


data = {

  "id":{

    "0":"sinbi",

    "1":"homzzang",

    "2":"momo",

    "3":"sana",

    "4":"soso"

  },

  "nick":{

    "0":"신비",

    "1":"홈짱",

    "2":"모모",

    "3":"사나",

    "4":"소소"

  },

  "level":{

    "0":3,

    "1":10,

    "2":2,

    "3":3,

    "4":4

  },

  "point":{

    "0":1000,

    "1":2000,

    "2":None,

    "3":3000,

    "4":4000

  }

}


df = pd.DataFrame(data)

print(df.to_string()

 

결과값:

         id nick  level   point

0     sinbi   신비      3  1000.0

1  homzzang   홈짱     10  2000.0

2      momo   모모      2     NaN

3      sana   사나      3  3000.0

4      soso   소소      4  4000.0

 


분류 제목
게시물이 없습니다.
32/24
목록
찾아주셔서 감사합니다. Since 2012