gpt4 book ai didi

python - 对多列进行分组,然后追加

转载 作者:太空宇宙 更新时间:2023-11-03 19:43:42 26 4
gpt4 key购买 nike

我正在尝试计算数据帧中相同数据包的出现次数,如果数据包具有这些匹配字段,则数据包是相同的:

['SourceIP', 'SourcePort', 'DestinationIP', 'DestinationPort', 'Protocol']

我想在数据框中创建一个包含出现值的新列,并将该列命名为“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.count :

cols = ['SourceIP', 'SourcePort', 'DestinationIP', 'DestinationPort', 'Protocol']
df['PerSec'] = df.groupby(cols)['SourceIP'].transform('count')

关于python - 对多列进行分组,然后追加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60279643/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com