質問編集履歴

2

追記

2022/12/23 03:20

投稿

msy47
msy47

スコア26

test CHANGED
File without changes
test CHANGED
@@ -53,6 +53,7 @@
53
53
 
54
54
  ### 発生している問題・エラーメッセージ
55
55
 
56
+ melianさんの指摘により、カラムがないことが原因
56
57
  ```
57
58
  "errorMessage" : "/None of [Index(["system-ip", "host-name", "device-model"], dtype = object`)] are in the [columns]/""
58
59
  ```

1

指摘について修正・追記

2022/12/23 02:59

投稿

msy47
msy47

スコア26

test CHANGED
File without changes
test CHANGED
@@ -18,6 +18,38 @@
18
18
 
19
19
  ここに実現したいことを箇条書きで書いてください。
20
20
  - [ ] 最初に実行したAPIリストと、pd.json_normalizeでカウントした結果を一覧化したい
21
+
22
+
23
+ ソース
24
+ #df①
25
+ print(df)
26
+
27
+ deviceId system-ip bfdSessionsUP bfdSessions
28
+ 10.0.0.1 10.1.0.1 7.0 7
29
+ 10.0.0.2 10.2.0.2 8.0 8
30
+
31
+ #df②
32
+ print(df)
33
+ inside-local-addr vrf-name ・・・ application-type inside-global-addr
34
+ 10.9.0.1 -gloal- ・・・ 0 10.10.0.1
35
+ 10.9.0.2 -gloal- ・・・ 0 10.10.0.2
36
+ [1 row x 17 columns]
37
+ 2 ←#df③: print(len(df))
38
+
39
+ inside-local-addr vrf-name ・・・ application-type inside-global-addr
40
+ 10.10.0.1 -gloal- ・・・ 0 10.11.0.1
41
+ 10.10.0.2 -gloal- ・・・ 0 10.11.0.2
42
+ 10.10.0.3 -gloal- ・・・ 0 10.11.0.3
43
+ [1 row x 17 columns]
44
+ 3 ←#df③: print(len(df))
45
+
46
+
47
+ 出力予定
48
+ deviceId system-ip bfdSessionsUP bfdSessions TunnnelCount(※df③の結果)
49
+ 10.0.0.1 10.1.0.1 7.0 7 2
50
+ 10.0.0.2 10.2.0.2 8.0 8 3
51
+
52
+
21
53
 
22
54
  ### 発生している問題・エラーメッセージ
23
55
 
@@ -85,6 +117,8 @@
85
117
  df = pd.json_normalize(json_data["data"])
86
118
  df = df[(df["device-type"] == "vedge") & (df["reachability"] == "reachable")]
87
119
 
120
+ #df①
121
+ print(df)
88
122
 
89
123
  for data in df.itertuples()
90
124
  deviceid = data[1]
@@ -96,19 +130,23 @@
96
130
  print(nat_translation_list.status_code)
97
131
 
98
132
  df = pd.json_normalize(json_data["data"]
133
+ #df②
99
134
  print(df)
100
135
 
136
+    #df③
101
137
  print(len(df))
102
138
 
139
+    #一時的にコメントアウト:indexは存在しない
103
-    df = df[["system-ip", "host-name", "device-model"]]
140
+    #df = df[["system-ip", "host-name", "device-model"]]
104
-    df[Tunnel Count] = len(df)
141
+    #df[Tunnel Count] = len(df)
105
-    c = df.pop(Tunnel Count)
142
+    #c = df.pop(Tunnel Count)
106
-    df.insert(df.shape[1], c.name, c)
143
+    #df.insert(df.shape[1], c.name, c)
107
144
  ```
108
145
 
109
146
  ### 試したこと
110
147
 
111
148
  1回目のAPI結果一覧と、2回目の結果をカウントした結果を一覧化しようと試みた
149
+ 指摘によろ「print(df.columns)」を確認indexの項目がないことが原因
112
150
 
113
151
     df = df[["system-ip", "host-name", "device-model"]]
114
152
     df[Tunnel Count] = len(df)