如何操作数据帧来计数值



如何转动此DF:

id          message_id           author_id            guild_id  has_attachments          channel_id              created_at
37438  37439  702588325613011054  599221212010512394  322850917248663552  0                 520132129103806483      2020-04-22 18:35:10.286 
37439  37440  702588325969657876  470642155824873472  322850917248663552  0                 373594756116119572      2020-04-22 18:35:10.371 
37440  37441  702588327467024474  371187008971866114  322850917248663552  0                 362236453771804683      2020-04-22 18:35:10.728 
37441  37442  702588328029061150  284428586981523466  322850917248663552  0                 338017726394138624      2020-04-22 18:35:10.862 
37442  37443  702588328368930876  382261028051877889  322850917248663552  0                 338017726394138624      2020-04-22 18:35:10.943 

变成这样:


author_id     channel_id
guild_id  [sum/count]  [sum/count]

我假设列是author_id raw和channel_id raw,但我该如何处理呢?

我想将每行的数据帧(guild(插入到influxdb 中

可能是这样的东西:

df.groupby('guild_id')['author_id']['channel_id'].sum()
df.groupby('guild_id')['author_id']['channel_id'].count()

您可以使用以下代码对列求和:

df[[col1, col2, etc]].sum()

用于计数:

df[[col1, col2, etc]].count()

[df[col].value_counts() for col in [col1, col2, etc]]

取决于你想做什么。

最新更新