听起来这就是你想要的:
import pandas as pd
from collections import defaultdict
df = pd.DataFrame([
{0: 'reviewers#0', 1: 1.0, 2: 2.0, 3: 3.0},
{0: 'reviewers#1', 1: 4.0, 2: 5.0, 3: 6.0},
{0: 'confiscated#0', 1: 7.0, 2: 8.0, 3: 9.0},
{0: 'confiscated#1', 1: 10.0, 2: 11.0, 3: 12.0},
])
print(df)
result = defaultdict(list)
for _, values in df.iterrows():
values = list(values)
result[int(values[0].split('#')[1])] += [values[1:]]
print(result)
结果:
0 1 2 3
0 reviewers#0 1.0 2.0 3.0
1 reviewers#1 4.0 5.0 6.0
2 confiscated#0 7.0 8.0 9.0
3 confiscated#1 10.0 11.0 12.0
defaultdict(<class 'list'>, {0: [[1.0, 2.0, 3.0], [7.0, 8.0, 9.0]], 1: [[4.0, 5.0, 6.0], [10.0, 11.0, 12.0]]})
一、 数据帧具有您描述的结构
result
你要的结果是什么?
如果你需要
defaultdict