我有四个列表需要转换为DataFrame。
rule_name_list = ['More Than 3 Failed Login Attempts Within 1 Hour ', 'More Than 3 Failed Login Attempts Within 1 Hour ', 'More Than 3 Failed Login Attempts Within 1 Hour ', 'More Than 3 Failed Login Attempts Within 1 Hour ', 'More Than 3 Failed Login Attempts Within 1 Hour ', 'More Than 3 Failed Login Attempts Within 1 Hour ', 'Member Added to Security-Enabled Global Group', 'Security-Enabled Global Group Modified']
risk_score_list = [47, 47, 47, 47, 47, 47, 73, 73]
severity_list = ['medium', 'medium', 'medium', 'medium', 'medium', 'medium', 'high', 'high']
code_list = ['N/A', '4625', '4625', '4625', '4625', '4625', '4728', '4737']
当我创建DataFrame时,“1小时内超过3次失败的登录尝试”规则不包括在内。我不知道为什么。
` def dataframe():
df=pd.DataFrame({"Code":code_list,"Event":rule_name_list,"RiskScore":risk_score_list,"Severity":severity_list})
# index = 1 * pd.RangeIndex(start=1, stop=2) #Add auto index
#Group Columns
df = df[df.Code.isin(event_code_list)] \
.groupby(["Code",'Event','RiskScore','Severity']) \
.agg(Detections = ("Event", len)) \
.reset_index()
df = pd.DataFrame(df,columns=["Code",'Event','RiskScore','Severity','Detections'])
return df
final = dataframe()`
输出:
Code Event RiskScore Severity Detections
0 4728 Member Added to Security-Enabled Global Group 73 high 1
1 4737 Security-Enabled Global Group Modified 73 high 1
预期输出:
Code Event RiskScore Severity Detections
0 4728 Member Added to Security-Enabled Global Group 73 high 1
1 4737 Security-Enabled Global Group Modified 73 high 1
2 4625 More Than 3 Failed Login Attempts Within 1 Hour 47 medium 6
任何帮助都很感激。
1条答案
按热度按时间b4lqfgs41#
我强烈怀疑
event_code_list
只包含有效的事件代码,而不包含字符串N/A
,因此该记录会从结果中过滤掉。