我有一个列表,其中“SUMMARY”元素和下一个元素之间的项目数不固定
list = ['SUMMARY - Dec 2013', 'Person1', 'None', 'None', '10', 'SUMMARY - Dec 2013', 'Person2', '20', 'SUMMARY - Jan 2014', 'Person3', 'None']
我想要实现的是将列表转换为数据框,其中每一行都以“SUMMARY”元素开头。
我用过
match = []
match.append([n for n, l in enumerate(list) if l.startswith('SUMMARY')])
使用输出[[0, 5, 8]]获取包含“SUMMARY”的项目的索引,我希望我的数据框的每一行都以其索引包含在match. 在这种情况下,匹配有 3 个元素,所以我希望我的数据框有 3 行和以下结构:
'SUMMARY - Dec 2013', 'Person1', 'None', 'None', '10'
'SUMMARY - Dec 2013', 'Person2', '20', NA, NA
'SUMMARY - Jan 2014', 'Person3', 'None', NA, NA
基本上,当特定行的项目数小于最大列数时,其余部分将填充 NA/NaN。
芜湖不芜
相关分类