gpt4 book ai didi

python - 如何将列表/字典转换为数据框?

转载 作者:行者123 更新时间:2023-12-01 08:40:24 30 4
gpt4 key购买 nike

我有一个 JSON 响应(下面的示例),我正在尝试将其转换为 DataFrame。我在将数据列为列 (1 x 346) 等方面遇到了一些问题。我只需要下面列出的 5 列:

area_name,
date,
month,
unemployment_rate,
year

这是我的代码:

edd_ca_df = pd.DataFrame.from_dict(edd_ca, orient="index", 
columns=["area_name", "month", "date", "year", "unemployment_rate"])

这是 JSON 响应的示例:

[[{'area_name': 'California',
'area_type': 'State',
'date': '1990-01-01T00:00:00.000',
'employment': '14099700',
'labor_force': '14953900',
'month': 'January',
'seasonally_adjusted_y_n': 'N',
'status_preliminary_final': 'Final',
'unemployment': '854200',
'unemployment_rate': '5.7',
'year': '1990'},

{'area_name': 'California',
'area_type': 'State',
'date': '1990-02-01T00:00:00.000',
'employment': '14206700',
'labor_force': '15049400',
'month': 'February',
'seasonally_adjusted_y_n': 'N',
'status_preliminary_final': 'Final',
'unemployment': '842800',
'unemployment_rate': '5.6',
'year': '1990'},

任何帮助将不胜感激。

最佳答案

由于您有一个字典列表,因此就像将所有数据传递到新的 DataFrame 并指定要保留的列一样简单:

import pandas as pd

all_data = [{'area_name': 'California',
'area_type': 'State',
'date': '1990-01-01T00:00:00.000',
'employment': '14099700',
'labor_force': '14953900',
'month': 'January',
'seasonally_adjusted_y_n': 'N',
'status_preliminary_final': 'Final',
'unemployment': '854200',
'unemployment_rate': '5.7',
'year': '1990'},

{'area_name': 'California',
'area_type': 'State',
'date': '1990-02-01T00:00:00.000',
'employment': '14206700',
'labor_force': '15049400',
'month': 'February',
'seasonally_adjusted_y_n': 'N',
'status_preliminary_final': 'Final',
'unemployment': '842800',
'unemployment_rate': '5.6',
'year': '1990'}]

keep_columns = ['area_name','date','month','unemployment_rate','year']
df = pd.DataFrame(columns=keep_columns, data=all_data)

print(df)

输出

    area_name                     date     month unemployment_rate  year
0 California 1990-01-01T00:00:00.000 January 5.7 1990
1 California 1990-02-01T00:00:00.000 February 5.6 1990

关于python - 如何将列表/字典转换为数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53531082/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com