반응형
예를 들어서 우리가 다루는 피클 파일의 데이터를 출력하였을 때 해당 결과가 이렇게 나온다고 가정해봅시다.
파일은 위에 첨부해 두었기에 따라서 진행을 해보셔도 좋습니다.
간단하게 표현하면 아래와 같은 dictionary 안에 3개의 값이 들어있는 형태가 여러 개로 이어진 형태입니다.
{'x1': array([4.9275775], dtype=float32), 'x2': array([-1.2006631], dtype=float32), 'rosenbrock': 64947.04304570523}
목표는 다음 형태에서 값만 추출하고 배열로 만드는 것입니다.
그러기 위해서는 우선 pickle 파일을 불러오는 코드와 딕셔너리 내부에 Value값들을 불러오는 코드가 필요합니다.
import numpy as np
import pickle
with open("data_test.pkl","rb") as fr:
data = pickle.load(fr)
data = np.array(data)
real_data = []
for i in range(data.size):
temp = np.array([])
temp = np.append(temp,data[i]['x1'])
temp = np.append(temp,data[i]['x2'])
temp = np.append(temp,data[i]['rosenbrock'])
real_data = np.append(real_data,temp)
print(real_data.size)
print(real_data.reshape(int(real_data.size/3),3))
작성은 다음과 같이 했으며 결과는 아래와 같이 출력 됩니다.
*추가적으로 도움되는 사이트
반응형
'프로그래밍 ( Programming ) > Python' 카테고리의 다른 글
[Python] Class 이해하기 (0) | 2021.11.25 |
---|---|
[Python] 모듈(Module)과 패키지(Package) 의미 정리 (0) | 2021.11.24 |
[Python] numpy - hstack, vstack 함수 (0) | 2021.01.12 |
[Python] numpy.reshape의 -1 의미 및 기능 (0) | 2021.01.12 |
[Python] numpy.meshgrid란 (0) | 2021.01.11 |
댓글