python - 如何在列中的每个不同值上拆分 DataFrame?
问题描述
下面是一个示例数据框。
0 1 2 3 4
0 0.0 13.00 4.50 30.0 0.0,13.0
1 0.0 13.00 4.75 30.0 0.0,13.0
2 0.0 13.00 5.00 30.0 0.0,13.0
3 0.0 13.00 5.25 30.0 0.0,13.0
4 0.0 13.00 5.50 30.0 0.0,13.0
5 0.0 13.00 5.75 0.0 0.0,13.0
6 0.0 13.00 6.00 30.0 0.0,13.0
7 1.0 13.25 0.00 30.0 0.0,13.25
8 1.0 13.25 0.25 0.0 0.0,13.25
9 1.0 13.25 0.50 30.0 0.0,13.25
10 1.0 13.25 0.75 30.0 0.0,13.25
11 2.0 13.25 1.00 30.0 0.0,13.25
12 2.0 13.25 1.25 30.0 0.0,13.25
13 2.0 13.25 1.50 30.0 0.0,13.25
14 2.0 13.25 1.75 30.0 0.0,13.25
15 2.0 13.25 2.00 30.0 0.0,13.25
16 2.0 13.25 2.25 30.0 0.0,13.25
当第 0 列中的行发生更改时,我想将其拆分为新的数据框。
0 1 2 3 4
0 0.0 13.00 4.50 30.0 0.0,13.0
1 0.0 13.00 4.75 30.0 0.0,13.0
2 0.0 13.00 5.00 30.0 0.0,13.0
3 0.0 13.00 5.25 30.0 0.0,13.0
4 0.0 13.00 5.50 30.0 0.0,13.0
5 0.0 13.00 5.75 0.0 0.0,13.0
6 0.0 13.00 6.00 30.0 0.0,13.0
7 1.0 13.25 0.00 30.0 0.0,13.25
8 1.0 13.25 0.25 0.0 0.0,13.25
9 1.0 13.25 0.50 30.0 0.0,13.25
10 1.0 13.25 0.75 30.0 0.0,13.25
11 2.0 13.25 1.00 30.0 0.0,13.25
12 2.0 13.25 1.25 30.0 0.0,13.25
13 2.0 13.25 1.50 30.0 0.0,13.25
14 2.0 13.25 1.75 30.0 0.0,13.25
15 2.0 13.25 2.00 30.0 0.0,13.25
16 2.0 13.25 2.25 30.0 0.0,13.25
到目前为止,我已经尝试过调整以下解决方案,但没有任何运气。在numpy中的值处拆分数组 拆分一个大熊猫数据框
解决方案
看起来你想要groupby
第一列。您可以从 groupby 对象创建一个字典,并将 groupby 键作为字典键:
out = dict(tuple(df.groupby(0)))
或者我们也可以从 groupby 对象构建一个列表。当我们只想要位置索引而不是基于分组键时,这变得更加有用:
out = [sub_df for _, sub_df in df.groupby(0)]
然后我们可以根据分组 key索引字典,或者根据组的位置索引列表:
print(out[0])
0 1 2 3 4
0 0.0 13.0 4.50 30.0 0.0,13.0
1 0.0 13.0 4.75 30.0 0.0,13.0
2 0.0 13.0 5.00 30.0 0.0,13.0
3 0.0 13.0 5.25 30.0 0.0,13.0
4 0.0 13.0 5.50 30.0 0.0,13.0
5 0.0 13.0 5.75 0.0 0.0,13.0
6 0.0 13.0 6.00 30.0 0.0,13.0
推荐阅读
- flutter - Flutter 中的自定义仪表设计
- reactjs - ReactJS SetTimeout / setInterval
- algorithm - 建议将一个数字写为三个数字的总和,其中每个数字至少为 2
- css - 如何修复从“无处”出现的滚动条的这种自我向上滚动效果?
- node.js - 如何使用聚合 mongoDB 从 2 个集合中获取链接数据
- java - 我可以像这样将带有 Map 的 3 个点放入方法参数中吗: private Map addAllMood(Map...map)
- javascript - Cheerio 加载字符串而不替换内部脚本内容
- node.js - 天蓝色事件的相关ID
- python - 二进制数的语法格式
- docker - Filecoin Textileio Powergate 没有足够的矿工来自声誉模块来满足约束错误