我试图统计数据帧中相同数据包的出现次数,如果数据包具有以下匹配字段,则数据包是相同的:
['SourceIP', 'SourcePort', 'DestinationIP', 'DestinationPort', 'Protocol']
我想在我的dataframe中创建一个具有发生值的新列,并将此列命名为“PerSec”
我已经尝试实现这里找到的这个问题的解决方案Pandas create new column with count from groupby
然而,当我跑步时:
df['PerSec'] = df.groupby(['SourceIP', 'SourcePort', 'DestinationIP', 'DestinationPort', 'Protocol']['SourceIP', 'SourcePort', 'DestinationIP', 'DestinationPort', 'Protocol'].transform('PerSec'))
with pd.option_context('display.max_rows', None, 'display.max_columns', None):
print(df)
我收到这个错误:
TypeError: list indices must be integers or slices, not tuple
这是否意味着groupby方法只对一列有效
在} :
groupby
之后只添加一列,并将一些聚合函数传递给groupby
,例如^{应该是这样的
Groupby方法可以扩展到多列。它将按给定的列顺序分组
对你来说
将返回一个分组数据帧,其中如果SourceIP等于它,则按SourcePort分组,依此类推
相关问题 更多 >
编程相关推荐