我有这样的记录:
Name .... Email Address
Alex .... alex1@gmail.comalex2@gmail.comalex3@gmail.com
Peter.... peter1@gmail.com
字符串
我想使用panda将1 alex1@gmail.comalex2@www.example.com alex3@gmail.com拆分成3行,然后将空白行Alex(name)合并成1,像这样:gmail.com
Name .... Email Address
.... alex1@gmail.com
Alex .... alex2@gmail.com
.... alex3@gmail.com
Peter.... peter1@gmail.com
型
2条答案
按热度按时间kqhtkvqz1#
您可以使用正则表达式模式与.split()和方法链接:
代码:
字符串
输出量:
型
rlcwz9us2#
不幸的是,你错过了一些非常重要的信息:
假设答案总是肯定的,我会采用以下解决方案:
1.首先,遍历pandas中的所有行
1.提取姓名和电子邮件地址
1.使用regex在电子邮件地址中查找所有匹配的提取(和降低)名称
1.创建一个包含姓名和提取的电子邮件地址的列表,并创建一个临时数据框架
1.连接所有 Dataframe
由于没有附加示例文件,我尝试创建一个类似的文件,这里是我的解决方案:
字符串
如果它工作,请接受这个解决方案作为你的帖子的答案。
输出数据框:
的数据