簡體   English   中英

將兩個csv文件的連接放在python的公共列上

[英]take a join of two csv files over a common column in python

我有兩個具有以下字段的csv文件:

文件1:

objectID,objectName,objecttype

文件2:

objectID,objectprice,objecttotalprice

這兩個文件中的數據用,分隔。 我想要的是通過objectID這兩個文件。 輸出應該已經加入了數據,並且文件1的數據與文件2不匹配。我嘗試了這段代碼,但是沒有給出正確的輸出:

import pandas as pd

a = pd.read_csv("file1.csv", names = ["objectID", "objectName", "objecttype"],header = 0).astype(basestring)

    b = pd.read_csv("file1.csv").astype(basestring)

    merged= a.merge(b, on='objectID',how='outer')

    merged.to_csv("output.csv", index=False)

當我運行這個再輸出我得到的數據file1 (與字段為空值的file2 )其次是數據file2 (與字段為空值file1 )。

我在這里做錯什么,如何正確進行聯接

注意:file1 ,文件名有些不同,因此當我在上面讀取file1.csv時,我將其重命名

我認為您正在尋找左聯接,請嘗試

merged= a.merge(b, on='objectID', how='left')

它的工作方式類似於SQL(請參閱文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM