Как бы я разбить данные из API на строки и столбцы, используя pandas? - PullRequest
1 голос
/ 23 января 2020

У меня есть данные от API в этом формате:

PublicAssistanceFundedProjectsSummaries

0  [{'disasterNumber': 1239, 'declarationDate': '...

Я хочу, чтобы они были в этом формате:

disasterNumber        declarationDate     etc.       etc. 
1239                  11/21/2001          XYZ.       XYZ

Как бы я go об этом ? Мой текущий код выглядит так:

g = requests.get('https://www.fema.gov/api/open/v1/PublicAssistanceFundedProjectsSummaries?get=PublicAssistanceFundedProjectsSummaries').json()
df_g = json_normalize(g)
df_g2 = df_g.drop(df_g.columns[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]], axis=1)

Извините, я очень новичок в кодировании.

1 Ответ

2 голосов
/ 23 января 2020

Вы близки, нужно указать PublicAssistanceFundedProjectsSummaries только ключ:

df = json_normalize(g, 'PublicAssistanceFundedProjectsSummaries')

Или:

df = json_normalize(g['PublicAssistanceFundedProjectsSummaries'])

print (df.head())
   disasterNumber           declarationDate     incidentType           state  \
0            1239  1998-08-26T00:00:00.000Z  Severe Storm(s)           Texas   
1            1240  1998-08-27T00:00:00.000Z        Hurricane  North Carolina   
2            1240  1998-08-27T00:00:00.000Z        Hurricane  North Carolina   
3            1240  1998-08-27T00:00:00.000Z        Hurricane  North Carolina   
4            1240  1998-08-27T00:00:00.000Z        Hurricane  North Carolina   

      county                        applicantName  educationApplicant  \
0  Val Verde               UNITED MEDICAL CENTERS               False   
1        NaN  ATLANTIC TELEPHONE MEMBERSHIP CORP.               False   
2        NaN              CARTERET COUNTY SCHOOLS                True   
3        NaN                 CEDAR POINT, TOWN OF               False   
4        NaN                      AURORA, TOWN OF               False   

   numberOfProjects  federalObligatedAmount                              hash  \
0                 1                12028.63  5d10528e4d343d96061da8816465e64b   
1                 1                30956.35  4aad896727265f6e5948a76e7977f57e   
2                 4              1288255.25  eb55e580a33cd4d97fa8fd1f0d71294d   
3                 1                 4125.00  e8ed9d023142825fa658ef7b5ae4729a   
4                 6                22810.25  23684ce3b4d27bc7561c39b024c3a05d   

                lastRefresh                        id  
0  2019-10-18T14:06:56.673Z  5da9c7005164620fcb0213ca  
1  2019-10-18T14:06:56.676Z  5da9c7005164620fcb0213dd  
2  2019-10-18T14:06:56.680Z  5da9c7005164620fcb0213f4  
3  2019-10-18T14:06:56.680Z  5da9c7005164620fcb0213f8  
4  2019-10-18T14:06:56.676Z  5da9c7005164620fcb0213da  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...