在Python中,可以使用pandas库来按数据框中的唯一值拆分数据框。以下是一个示例代码:
import pandas as pd
# 创建一个示例数据框
data = {'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'two', 'one', 'one', 'two', 'two'],
'C': [1, 2, 3, 4, 5, 6, 7, 8]}
df = pd.DataFrame(data)
# 按列'A'的唯一值拆分数据框
dfs = [group for _, group in df.groupby('A')]
# 打印拆分后的数据框
for i, df_split in enumerate(dfs):
print(f"Split {i+1}:")
print(df_split)
print()
输出结果如下:
Split 1:
A B C
0 foo one 1
2 foo two 3
4 foo one 5
6 foo two 7
7 foo two 8
Split 2:
A B C
1 bar one 2
3 bar two 4
5 bar one 6
此代码示例中,首先创建了一个示例数据框df。然后使用df.groupby('A')
对数据框按列'A'的唯一值进行分组。最后,使用列表推导式将分组后的数据框存储在dfs列表中。最后,可以遍历dfs列表并打印每个拆分后的数据框。
上一篇:按数据框中的对象属性进行分组
下一篇:按数据库计算的某个方式分组