Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

판다스(Pandas) DataFrame을 JSON 파일로 저장하고 다시 불러오는 방법

데이터 분석 작업을 하다 보면 DataFrame의 내용을 파일로 저장했다가 나중에 다시 불러와야 하는 경우가 자주 발생합니다. 판다스(Pandas)에서는 to_json() 메서드와 read_json() 메서드를 사용하여 DataFrame을 JSON 파일로 저장하고 다시 읽어올 수 있습니다.

처리 순서

  • 2차원이면서 크기가 변경 가능한, 이질적인 데이터를 담을 수 있는 표 형태의 데이터 구조인 DataFrame(df)을 생성합니다.
  • 입력으로 사용된 DataFrame(df)을 출력하여 확인합니다.
  • to_json() 메서드를 사용하여 DataFrame을 JSON 파일로 저장합니다.
  • read_json() 메서드를 사용하여 저장된 JSON 파일을 다시 읽어옵니다.

예제 코드

import pandas as pd

df = pd.DataFrame(
    {
        "x": [5, 2, 7, 0],
        "y": [4, 7, 5, 1],
        "z": [9, 3, 5, 1]
    }
)
print("Input DataFrame is:\n", df)
print("JSON output for input DataFrame: ", df.to_json("test.json"))

print("Reading the created JSON file")
print("Dataframe is: \n", pd.read_json("test.json"))

실행 결과

Input DataFrame is:
   x  y  z
0  5  4  9
1  2  7  3
2  7  5  5
3  0  1  1

JSON output for input DataFrame: None

Reading the created JSON file

Dataframe is:
   x  y  z
0  5  4  9
1  2  7  3
2  7  5  5
3  0  1  1

코드 설명

df.to_json("test.json")을 호출하면 DataFrame에 담긴 데이터를 기반으로 "test.json"이라는 이름의 JSON 파일이 생성됩니다. 이때 반환값이 None으로 출력되는 것은 정상적인 동작입니다. 파일 저장이 성공적으로 완료되었음을 의미하며, 별도의 값을 반환하지 않기 때문입니다.

이후 pd.read_json("test.json")을 호출하면 앞서 저장해 둔 test.json 파일에서 데이터를 읽어와 새로운 DataFrame으로 복원합니다. 실행 결과에서 확인할 수 있듯이, 저장 전과 후의 DataFrame 내용이 동일하게 유지되는 것을 알 수 있습니다.

참고 사항

to_json() 메서드는 orient 매개변수를 통해 JSON 저장 형식(records, columns, index 등)을 지정할 수 있으며, read_json()에서도 같은 방식으로 형식을 맞춰 읽어오면 됩니다. 또한 대용량 데이터를 다룰 때는 lines=True 옵션을 활용하면 줄 단위(JSON Lines)로 저장하고 처리할 수 있어 효율적입니다.