通过管道python将单元格拆分为行
我正在尝试通过管道(“|”)将单元格拆分为两行 例如:通过管道python将单元格拆分为行,python,Python,我正在尝试通过管道(“|”)将单元格拆分为两行 例如: ID Site Category Queries 1 0 38037 antique+wall+telephone|antique+wall+phone 将成为: ID Site Category Queries 1 0 38037 antique+wall+telephone 1 0 38037 antique+wall
ID Site Category Queries
1 0 38037 antique+wall+telephone|antique+wall+phone
将成为:
ID Site Category Queries
1 0 38037 antique+wall+telephone
1 0 38037 antique+wall+phone
您可以使用.split()
输出将是“|”两侧的元素列表
因此,输出将是
("antique+wall+telephone", "antique+wall+phone")
然后,您可以简单地在字符串列表的每个元素前面添加ID号
希望这能回答你的问题这里有一个方法:
>>> id, site, category, queries
('1', '0', '38037', 'antique+wall+telephone|antique+wall+phone')
>>> for query in queries.split('|'):
... print id, site, category, query
...
1 0 38037 antique+wall+telephone
1 0 38037 antique+wall+phone
使用talend,还可以使用tNormalize组件:只需在下拉菜单中指定要规格化的列。如果要使用“|”作为项目分隔符,请小心,因为它是保留字符,必须使用“\|”对其进行转义。
>>> id, site, category, queries
('1', '0', '38037', 'antique+wall+telephone|antique+wall+phone')
>>> for query in queries.split('|'):
... print id, site, category, query
...
1 0 38037 antique+wall+telephone
1 0 38037 antique+wall+phone