<分区>
我有一个正在输出到名为“所有数据”的电子表格的数据框。假设此数据包含企业地址(街道、城市、 zip 、州的列)。但是,我还想为包含完全相同列的每个唯一状态创建一个工作表。
我的基本想法是使用 df.iterrows()
遍历每一行,然后通过将数据帧附加到新数据帧来划分数据帧,但这似乎效率极低。有更好的方法吗?
我找到了 this answer但这只是一个 bool 索引。
<分区>
我有一个正在输出到名为“所有数据”的电子表格的数据框。假设此数据包含企业地址(街道、城市、 zip 、州的列)。但是,我还想为包含完全相同列的每个唯一状态创建一个工作表。
我的基本想法是使用 df.iterrows()
遍历每一行,然后通过将数据帧附加到新数据帧来划分数据帧,但这似乎效率极低。有更好的方法吗?
我找到了 this answer但这只是一个 bool 索引。
最佳答案
其他问题的 groupby 答案也适用于您。在您的情况下,类似于:
df_list = [d for _, d in df.groupby(['state'])]
这使用列表理解来返回数据帧列表,每个状态有一个数据帧。
关于python - Pandas 按唯一列值拆分数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62330833/