我有一个列表,我最初从一个CSV文件,并保存到一个列表。csv文件最初是一个excel表,其中包含每个表的数据类别。我有困难试图提取标题和内容连同它在一个有组织的方式。列表如下所示
myLoad =[
['Unit 1000', '', '']
['A1', 'Food', 'Good']
['A3', 'Drink', 'Poor']
['A6', 'Food', '']
['Unit 1001', '', '']
['A7', 'Cheese', 'Yellow']
['A8', 'Coke', 'Brown] ]
我想让名单看起来像
1000, A1, Food, Good
1000, A3, Drink, Poor
1000, A6, Food,
1001, A7, Cheese, Yellow
1001, A8, Coke, Brown
虽然我正在比较另一个列表来提取数据,但是我使用regex来查找单元号,但是即使在找到了编号之后,我仍然无法提取列表的其余部分以及与之相关的每个类别号
loadRegex = re.compile(r'\d{4}')
for i, row in enumerate(myLoad):
thisLoad = loadRegex.search(row[0])
if thisLoad:
print thisLoad.group() #which would print each number
在这之后我想不出来 我如何让单元#打印(并最终添加到新的列表),以及每个部分的内容,就好像所有内容都在一起一样
我希望内容是这样的,如果单位#被找到,然后打印每一行,直到下一个单位#被找到,但它必须基于正则表达式,这样我就可以使用相同的正则表达式来比较相同的单位编号到另一个文件
您不需要regex,只需执行以下代码:
输出:
如果你想解决这个问题, 你可以试试这个
输出:
说明:
将列表转换为数据帧
为单位值创建新列。通过正向填充方法填充NaN值
提取所需行
我不会在这里使用
regex
相关问题 更多 >
编程相关推荐