사전에서 DataFrame 만들기

Oct 14 2020

데이터베이스의 테이블에서 데이터를 요청하고 각 행은 다음과 같은 사전으로 제공됩니다.

{
    "timestamp" : 1234657890,
    "prices" : {
                   "AAA" : 111,
                   "BBB" : 222,
                    ...
                   "ZZZ" : 999
               }
}

이 모든 줄에서 다음과 같은 데이터 프레임을 만들고 싶었습니다.

Timestamp    AAA    BBB    ...   ZZZ
1234657890   111    222    ...   999
1234567891   110    223    ...   997
   ...
1324657899   123    208    ...  1024

그래서 나는 :

rawData = database_request()
listPrices = []
for row in rawData
    tmp = {'timestamp': row['timestamp']}
    tmp.update({name : price for name,price in row['prices'].items()})
    listPrices.append(tmp)
df = pd.DataFrame(listePrices)

그래서 이것을 수행하는 더 비단뱀적인 방법이 있는지 궁금합니다.

답변

3 hjpotter92 Oct 14 2020 at 17:43

귀하의 rawData(이상적으로 지정해야하는 raw_data, 파이썬은 이름의 변수와 함수에 스타일 가이드를 제안 lower_snake_case) 목록 구조를 이미 사용 중입니다. 전체 데이터 세트를 수동으로 처리하지 않고도 제자리에서이를 조작 할 수 있습니다.

for row in raw_data:
    row.update(row.pop("prices"))