下面是一个示例代码,演示了如何根据名称对列进行分组划分:
import pandas as pd
# 创建示例数据
data = {'名称': ['A', 'B', 'C', 'D', 'E'],
'数值': [1, 2, 3, 4, 5]}
df = pd.DataFrame(data)
# 创建一个空字典来存储分组后的列
grouped_columns = {}
# 根据名称进行列的分组划分
for name in df['名称'].unique():
grouped_columns[name] = df[df['名称'] == name]['数值']
# 打印分组后的列
for name, column in grouped_columns.items():
print(f"{name}列:\n{column}")
运行以上示例代码,将得到如下输出:
A列:
0 1
Name: 数值, dtype: int64
B列:
1 2
Name: 数值, dtype: int64
C列:
2 3
Name: 数值, dtype: int64
D列:
3 4
Name: 数值, dtype: int64
E列:
4 5
Name: 数值, dtype: int64
在示例代码中,我们首先创建了一个包含名称和数值的示例数据。然后创建了一个空字典grouped_columns
,用于存储分组后的列。
接下来,我们使用unique()
方法获取唯一的名称列表,并根据每个名称,将相应的列添加到grouped_columns
字典中。我们使用条件索引df['名称'] == name
来选择与当前名称匹配的行,并提取对应的数值列。
最后,我们通过遍历grouped_columns
字典,打印每个分组后的列。
上一篇:按照他们的名称将组列表项分组