【发布时间】:2020-10-21 12:17:17
【问题描述】:
我有一个带有 WhatsApp 消息的 DataFrame,发件人.groupbyed。我可以以某种方式将整个 DataFrame 或仅一个 Series 拆分并保存到单独的变量中吗?
假设我有发件人 A、B、C。我能否获得 3 个新数据帧,分别只有发件人 A、B、C 或只有一列的发件人曾经是 A、B 或 C 的系列?
【问题讨论】:
-
您能否展示如何从数据中构建数据框的代码?
-
dfa, dfb, dfc = [_, s for s in df.groupby('sender')] -
@mounaim 你是什么意思?
-
df.groupby是一个可迭代对象。这个迭代的结构是(index, data_frame)。这意味着如果你执行for i in df.groupby(...): print I,你会看到一个有两个位置的元组。第一个是索引,第二个是按该索引分组的子数据帧。index这里将是您分组的任何内容。因此,如果您的df包含三个发件人(例如 Mike、John 和 Paul),list(df.groupby('sender'))将返回类似[(Mike, df_mike), (John, df_john), (Paul, df_paul)]的内容。当您执行for (_, s) in df.groupby时,您会自动将Mike分配给变量_和 -
df_make to the variables). It is a convention in python to use_`(下划线)每当不使用变量时,这就是我这样做的原因。
标签: python pandas dataframe pandas-groupby series