Python中文
首页
教程
问答
标签
搜索
登录
注册
执行merg时防止重复行
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在做一个数据分析项目,结果遇到了麻烦。你知道吗</p> <p>基本上,如果我有一个示例CSV“A”:</p> <pre><code>id | item_num A123 | 1 A123 | 2 B456 | 1 </code></pre> <p>我有一个例子“B”:</p> <pre><code>id | description A123 | Mary had a... A123 | ...little lamb. B456 | ...Its fleece... </code></pre> <p>如果我使用<code>Pandas</code>执行<code>merge</code>,结果如下:</p> <pre><code>id | item_num | description A123 | 1 | Mary had a... A123 | 2 | Mary had a... A123 | 1 | ...little lamb. A123 | 2 | ...little lamb. B456 | 1 | Its fleece... </code></pre> <p>我怎样才能让它变成:</p> <pre><code>id | item_num | description A123 | 1 | Mary had a... A123 | 2 | ...little lamb... B456 | 1 | Its fleece... </code></pre> <p>这是我的密码:</p> <pre><code>import pandas as pd # Import CSVs first = pd.read_csv("../PATH_TO_CSV/A.csv") print("Imported first CSV: " + str(first.shape)) second = pd.read_csv("../PATH_TO_CSV/B.csv") print("Imported second CSV: " + str(second.shape)) # Create a resultant, but empty, DF, and then append the merge. result = pd.DataFrame() result = result.append(pd.merge(first, second), ignore_index = True) print("Merged CSVs... resulting DataFrame is: " + str(result.shape)) # Lets do a "dedupe" to deal with an issue on how Pandas handles datetime merges # I read about an issue where if datetime is involved, duplicate entires will be created. result = result.drop_duplicates() print("Deduping... resulting DataFrame is: " + str(result.shape)) # Save to another CSV result.to_csv("EXPORT.csv", index=False) print("Saved to file.") </code></pre> <p>我真的很感激任何帮助-我很困!我要处理20000多行。你知道吗</p> <p>谢谢。你知道吗</p> <p>编辑:我的文章被标记为可能的重复。不是的,因为我不一定要添加一个列-我只是想阻止<code>description</code>乘以<code>item_num</code>的个数,这个数是属于特定的<code>id</code>。你知道吗</p> <hr/> <p><strong>更新,6月21日:</strong></p> <p>如果两个df看起来像这样,我怎么能合并呢?你知道吗</p> <pre><code>id | item_num | other_col A123 | 1 | lorem ipsum A123 | 2 | dolor sit A123 | 3 | amet, consectetur B456 | 1 | lorem ipsum </code></pre> <p>我有一个例子“B”:</p> <pre><code>id | item_num | description A123 | 1 | Mary had a... A123 | 2 | ...little lamb. B456 | 1 | ...Its fleece... </code></pre> <p>所以我的结论是:</p> <pre><code>id | item_num | other_col | description A123 | 1 | lorem ipsum | Mary Had a... A123 | 2 | dolor sit | ...little lamb. B456 | 1 | lorem ipsum | ...Its fleece... </code></pre> <p>也就是说,在“其他列”中有“amet,consectetur”的3的行被忽略。你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>尝试索引您的df,然后删除重复项:</p> <pre><code>df = df.set_index(['id', 'item_num']).drop_duplicates() </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
我想从用户inpu创建一个类的实例
6 回答
我想从用户导入值,为此
4 回答
我想从用户那里得到一个整数输入,然后让for循环遍历该数字,然后调用一个函数多次
5 回答
我想从用户那里收到一个列表,并在其中执行一些步骤,然后在步骤完成后将其打印回来,但它没有按照我想要的方式工作
1 回答
我想从用户那里获取输入,并将值传递给(average=dict[x]/6),然后在那里获取resu
7 回答
我想从第一个列表中展示第一个词,然后从第二个列表中展示十个词,以此类推- Python
6 回答
我想从第一个空lin开始解析文本文件
9 回答
我想从简历、简历中提取特定部分
10 回答
我想从给定字典(python)的字符串中删除\u00a9、\u201d和类似的字符。
4 回答
我想从给定的网站Lin下载许多文件扩展名相同的Wget或Python文件
10 回答
我想从网上搜集一些关于抵押贷款的数据
4 回答
我想从网站上删除电子邮件地址
10 回答
我想从网站上读取数据该网站包含可下载的文件,然后我想用python脚本把它发送给oracle如何?
10 回答
我想从网站中提取数据,然后将其显示在我的网页上
8 回答
我想从网页上提取统计数据。
8 回答
我想从网页上解析首都城市,并在用户输入国家时在终端上打印它们
6 回答
我想从色彩图中删除前n个颜色,而不丢失原始颜色数
10 回答
我想从课堂上打印字典里的键
7 回答
我想从费用表中获取学生上次支付的费用,其中学生id=id
8 回答
我想从较低的顺序对多重列表进行排序,但我无法在一行中生成结果
9 回答