Проблема в том, что я хочу создать Dataframe из рекурсивно вложенного файла JSON, и я придумал собственный способ сделать это.Если у вас есть другие способы сделать это более простым способом, пожалуйста, дайте мне знать
У меня есть записи данных о полетных данных за 24 часа в файле json, и я хотел создать фрейм данных, используя его для формирования фрейма данныхна день.Я мог бы сделать это, создавая объект для каждого часа, а затем, используя append, объединил их все, но это казалось утомительным процессом даже в течение 24 часов, что если бы у меня была проблема с объединением 1000 записей таким образом.Поэтому я придумал этот код - я попытался перебрать JSON-файл для почасовых данных и создать два фрейма одновременно, объединяя их с помощью concat.Позже я сохраню пару фреймов данных, которые были собраны в словаре со значениями ключей, обозначенными переменной z.Когда я его печатаю, выходные данные содержат 2 записи одновременно и распечатываются 12 раз, следовательно, все данные делаются за 24 часа, но когда я сохраняю данные в CSV-файле, сохраняются только данные, соответствующие двум последним часам.,
import pandas as pd
z = 0
result1 = {}
for i in range(0,24):
if (i%2)==0:
dataF = data["data"]["weather"][0]["hourly"][i]
dataF2 = data["data"]["weather"][0]["hourly"][i+1]
dataFrame = pd.DataFrame(dataF,index=[i+1])
dataFrame2 = pd.DataFrame(dataF2,index=[i+2])
frame = [dataFrame,dataFrame2]
result = pd.concat(frame)
#result.append(result)
#print(result1)
result1[z] = result
z += 1
print(result1)`
Результат печати:
{0: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC windspeedMiles \
1 11 46 NW 8 8 7
2 13 42 NW 6 7 8
DewPointF HeatIndexF cloudcover HeatIndexC ... \
1 47 49 100 10 ...
2 44 46 100 8 ...
weatherDesc visibility weatherCode tempC tempF \
1 {'value': 'Patchy rain possible'} 10 176 10 49
2 {'value': 'Patchy rain possible'} 10 176 8 46
WindChillF WindChillC winddirDegree humidity time
1 46 8 318 91 0
2 42 6 317 92 100
[2 rows x 25 columns], 1: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC windspeedMiles \
3 14 38 NW 3 5 9
4 16 33 NW 1 3 10
DewPointF HeatIndexF cloudcover HeatIndexC ... weatherDesc \
3 41 43 100 6 ... {'value': 'Overcast'}
4 38 40 100 4 ... {'value': 'Overcast'}
visibility weatherCode tempC tempF WindChillF WindChillC winddirDegree \
3 10 122 6 43 38 3 315
4 10 122 4 40 33 1 314
humidity time
3 92 200
4 93 300
[2 rows x 25 columns], 2: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC windspeedMiles \
5 17 33 NW 1 3 10
6 17 33 NW 0 3 11
DewPointF HeatIndexF cloudcover HeatIndexC ... weatherDesc \
5 38 40 100 4 ... {'value': 'Overcast'}
6 38 39 100 4 ... {'value': 'Overcast'}
visibility weatherCode tempC tempF WindChillF WindChillC winddirDegree \
5 10 122 4 40 33 1 314
6 10 122 4 40 33 0 315
humidity time
5 93 400
6 93 500
[2 rows x 25 columns], 3: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC windspeedMiles \
7 18 32 NW 0 3 11
8 18 33 NW 1 3 11
DewPointF HeatIndexF cloudcover HeatIndexC ... weatherDesc \
7 38 39 100 4 ... {'value': 'Overcast'}
8 38 40 100 4 ... {'value': 'Overcast'}
visibility weatherCode tempC tempF WindChillF WindChillC winddirDegree \
7 10 122 4 40 32 0 315
8 10 122 5 41 33 1 317
humidity time
7 93 600
8 93 700
[2 rows x 25 columns], 4: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
9 17 34 NW 1 4
10 17 35 NW 2 4
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
9 11 38 40 100 5 ...
10 11 39 41 100 5 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
9 {'value': 'Overcast'} 10 122 5 42 34
10 {'value': 'Overcast'} 10 122 6 42 35
WindChillC winddirDegree humidity time
9 1 318 92 800
10 2 319 92 900
[2 rows x 25 columns], 5: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
11 17 36 NW 2 4
12 17 37 NW 3 4
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
11 10 38 42 100 6 ...
12 10 38 43 100 6 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
11 {'value': 'Overcast'} 10 122 7 44 36
12 {'value': 'Overcast'} 10 122 7 45 37
WindChillC winddirDegree humidity time
11 2 318 88 1000
12 3 317 84 1100
[2 rows x 25 columns], 6: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
13 17 38 NW 3 3
14 17 38 NW 4 3
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
13 10 38 44 100 7 ...
14 10 38 44 100 7 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
13 {'value': 'Overcast'} 10 122 8 47 38
14 {'value': 'Overcast'} 10 122 9 47 38
WindChillC winddirDegree humidity time
13 3 317 81 1200
14 4 317 79 1300
[2 rows x 25 columns], 7: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
15 17 39 NW 4 3
16 17 39 NW 4 3
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
15 10 38 44 100 7 ...
16 11 37 45 100 7 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
15 {'value': 'Overcast'} 10 122 9 48 39
16 {'value': 'Overcast'} 10 122 10 49 39
WindChillC winddirDegree humidity time
15 4 317 76 1400
16 4 317 74 1500
[2 rows x 25 columns], 8: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
17 17 39 NW 4 3
18 17 39 NW 4 2
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
17 11 37 44 100 7 ...
18 11 36 44 100 7 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
17 {'value': 'Overcast'} 10 122 9 48 39
18 {'value': 'Overcast'} 10 122 8 46 39
WindChillC winddirDegree humidity time
17 4 318 74 1600
18 4 318 73 1700
[2 rows x 25 columns], 9: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
19 17 38 NW 3 2
20 17 37 NW 3 2
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
19 11 36 44 100 7 ...
20 11 35 43 100 6 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
19 {'value': 'Overcast'} 10 122 7 45 38
20 {'value': 'Overcast'} 10 122 7 44 37
WindChillC winddirDegree humidity time
19 3 319 73 1800
20 3 318 72 1900
[2 rows x 25 columns], 10: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
21 17 37 NW 3 1
22 16 36 NW 2 1
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
21 10 34 43 100 6 ...
22 10 33 42 100 6 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
21 {'value': 'Overcast'} 10 122 6 43 37
22 {'value': 'Overcast'} 10 122 6 42 36
WindChillC winddirDegree humidity time
21 3 317 71 2000
22 2 316 71 2100
[2 rows x 25 columns], 11: windspeedKmph FeelsLikeF winddir16Point FeelsLikeC DewPointC \
23 16 35 NW 2 1
24 16 35 NW 2 1
windspeedMiles DewPointF HeatIndexF cloudcover HeatIndexC ... \
23 10 33 41 95 5 ...
24 10 33 41 91 5 ...
weatherDesc visibility weatherCode tempC tempF WindChillF \
23 {'value': 'Overcast'} 10 122 5 41 35
24 {'value': 'Overcast'} 10 122 5 41 35
WindChillC winddirDegree humidity time
23 2 317 72 2200
24 2 318 74 2300
[2 rows x 25 columns]}