Python中文
首页
教程
问答
标签
搜索
登录
注册
基于字符串中的子字符串的Python Pandas合并
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有两个数据帧,格式如下:</p> <pre><code>df_search SEARCH part1 anotherpart onemorepart df_all FILE EXTENSION PATH part1_1 .prt //server/folder1/part1_1 part1_2 .prt //server/folder2/part1_2 part1_2 .pdf //server/folder3/part1_2 part1_3 .prt //server/folder2/part1_3 anotherpart_1 .prt //server/folder1/anotherpart_1 anotherpart_2 .prt //server/folder3/anotherpart_2 anotherpart_3 .prt //server/folder2/anotherpart_3 anotherpart_3 .cgm //server/folder1/anotherpart_3 anotherpart_4 .prt //server/folder3/anotherpart_4 onemorepart_1 .prt //server/folder2/onemorepart_1 onemorepart_2 .prt //server/folder1/onemorepart_2 onemorepart_2 .dwg //server/folder2/onemorepart_2 onemorepart_3 .prt //server/folder1/onemorepart_3 onemorepart_4 .prt //server/folder1/onemorepart_4 </code></pre> <p>完整的df_搜索有15000个条目。df峈都有55万件物品。我试图根据文件字符串中的搜索项字符串合并两个数据帧。我想要的输出是:</p> ^{pr2}$ <p>简单的数据帧合并不起作用,因为字符串永远不是完全匹配的(它总是一个子字符串)。基于stackoverflow的其他问题,我也尝试了以下方法:</p> <pre><code>df_all[df_all.name.str.contains('|'.join(df_search.search))] </code></pre> <p>这给了我一个在df_all中找到的所有项目的完整列表,但是我不知道哪个搜索字符串返回了哪个结果。在</p> <p>我设法让它与for循环一起工作,但对于我的数据集来说,它很慢(67分钟):</p> <pre><code>super_df = [] for search_item in df_search.search: df_entire.loc[df_entire.file.str.contains(search_item), 'search'] = search_item temp_df = df_entire[df_entire.file.str.contains(search_item)] super_df = pd.concat(super_df, axis=0, ignore_index=True) </code></pre> <p>有没有可能通过矢量化来提高性能?在</p> <p>谢谢</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我会这样做:</p> <pre><code>df_all['SEARCH'] = '' for val in df_search.SEARCH: df_all.loc[df_all['FILE'].str.match(val), 'SEARCH'] = val </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
4 回答
如何添加表示整数的擦边字符串?
5 回答
如何添加要在Bokeh中使用的新font.ttf文件?
2 回答
如何添加要显示的矩阵XY轴编号和XY轴
4 回答
如何添加计数?
7 回答
如何添加计数器函数?
3 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
9 回答
如何添加计数器来跟踪while循环中的月份和年份?
3 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
7 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
3 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
3 回答
如何添加评论拉梅尔亚姆
1 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
8 回答
如何添加谷歌地点自动完成到Flask?
5 回答
如何添加超时、python discord bot
9 回答
如何添加超过1dp的检查
3 回答
如何添加距离方法
1 回答
如何添加跟随游戏的敌人精灵
8 回答
如何添加路径以便python可以找到程序?
8 回答
如何添加身份验证/安全性以使用happybase访问HBase?
2 回答