我有一个这样的数据框:
我想要这样的输出:
名称1:
任务1:
句子1
句子2
任务2:
句子3
名称2:
任务1:
句子4
名称3:
任务1:
句子5
任务2:
句子6
这是我到目前为止所做的:
for name in df.Name.unique():
print(name + ' :\n')
for mission in df.Mission.unique():
print(mission + ' :\n')
for index, value in df.Phrases[df.Mission == mission].items():
print(value)
print()
for index, value in df.Phrases[df.Name == name].items():
print(value)
print()
print('\n')
但是输出的结果并不完全是我所得到的,我看到了什么是错误的,但是我无法弄清楚如何处理它:
名称1:
任务1:
句子1
句子2
句子4
句子5
任务2:
句子3
句子6
句子1
句子2
句子3
名称2:
任务1:
句子1
句子2
句子4
句子5
任务2:
句子3
句子6
句子4
名称3:
任务1:
句子1
句子2
句子4
句子5
任务2:
句子3
句子6
句子5
句子6
您可以为自己的数据框优化代码,但逻辑相同:
for name in df.name.unique():
print(name)
for miss in df.mission.unique():
print(' ' + miss)
for sentence in df.sentences[(df.name == name) & (df.mission == miss)].tolist():
print(' ' + sentence)
name1
mission1
sentence1
sentence2
mission2
sentence3
name2
mission1
sentence4
mission2
name3
mission1
sentence5
mission2
sentence6
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句