|
|
@@ -246,6 +246,29 @@ test_ntm_df = pd.DataFrame(test_ntm)
|
|
246
|
246
|
test_ntm_df.rename(columns={0:'Frequency', 1:'Cause'}, inplace=True)
|
|
247
|
247
|
print(test_ntm_df)
|
|
248
|
248
|
test_sort_values = test_ntm_df.sort_values(by=['Frequency'],ascending=False,ignore_index=True)
|
|
249
|
|
-##
|
|
|
249
|
+# test_sort_values : PrefixSpan을 수행하여 Frequency가 나온 값. Frequency 를 기준으로 정렬했는데, 2900만가지나 된다.
|
|
250
|
250
|
|
|
251
|
|
-# test_sort_values : PrefixSpan을 수행하여 Frequency가 나온 값. Frequency 를 기준으로 정렬했는데, 2900만가지나 된다.
|
|
|
251
|
+
|
|
|
252
|
+# Effect Rule Name Case 1.
|
|
|
253
|
+prefix_NTM_df = test_sort_values
|
|
|
254
|
+for i in range(0,len(prefix_NTM_df)):
|
|
|
255
|
+ drules=['Attack','DDOS','HACK','MAIL','Malwr','WEB']
|
|
|
256
|
+ for drule in drules:
|
|
|
257
|
+ if drule in prefix_NTM_df.Cause[i]:
|
|
|
258
|
+ prefix_NTM_df.Effect[i] = drule
|
|
|
259
|
+ elif prefix_NTM_df.Cause[i] == NaN:
|
|
|
260
|
+ prefix_NTM_df.Effect[i] = ''
|
|
|
261
|
+
|
|
|
262
|
+# Effect Rule Name Case 2.
|
|
|
263
|
+prefix_NTM_df = test_sort_values
|
|
|
264
|
+
|
|
|
265
|
+for i in range(0,len(prefix_NTM_df)):
|
|
|
266
|
+ drules=['Attack','DDOS','HACK','MAIL','Malwr','WEB']
|
|
|
267
|
+ for drule in drules:
|
|
|
268
|
+ iloc_value = prefix_NTM_df.iloc[i]['Cause']
|
|
|
269
|
+ if drule in iloc_value:
|
|
|
270
|
+ prefix_NTM_df.Cause[i] = drule
|
|
|
271
|
+
|
|
|
272
|
+# Case 1을 20분동안 돌렸는데도 결과가 나오질 않아서 iloc으로 바꾸어 Case2로 돌려보았다. 이것도 오래걸리는 중..
|
|
|
273
|
+
|
|
|
274
|
+# Rule Name 적용한 코드는 prefix_NTM_df 에 적용.
|