国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

python -查找重復郵箱,保留沒重復過的值

AlphaGooo / 2329人閱讀

摘要:用讀文件個郵件列表去重后,不包含的數據這次是要讀取兩個的文件,然后查看表中的郵箱不在中的郵箱,然后將結果另存為知識點讀,沒有列標題,命名標題合并兩個,然后找不同。在的話,要先選擇最后一列為的值。

用pd讀excel文件--2個郵件列表去重后,不包含的數據

這次是要讀取兩個excel的文件,然后查看tiany表中的郵箱不在spam中的郵箱,然后將結果另存為"email_result.xlsx"

知識點

讀excel,沒有列標題,命名標題

合并兩個dataframe,然后找不同。用merge

取不包含*的值,再isin前面加 ~

寫入csv,要注意是否包含了前面的索引

1、讀excel

讀excel文件
兩個excel表都僅有郵箱一列,且無列名,所以在讀取時要標明無列名,且要將列命名為"mail".
下面的代碼時錯誤的:
tianyan = pd.read_excel("C:/Users/*/Documents/tiany.xlsx",header=None)

出來之后標題是0,用rename函數也改不過來

然后在header= None后面加了 "names = "mail" 還是不對,看不懂英文啊,吃大虧!!!

無奈求助大神,names都不會用?你看文檔了嗎?看不懂英文,來我教你看文檔 (習慣性被鄙視(●ˇ?ˇ●)

然后大神帶著我看了一遍這個函數的英文解釋才曉得,names后面應該是列表
header : int, list of ints, default 0

Row (0-indexed) to use for the column labels of the parsed DataFrame. If a list of integers is passed those row positions will be combined into a MultiIndex. Use None if there is no header.

names : array-like, default None

List of column names to use. If file contains no header row, then you should explicitly pass header=None

正確的應該是這個樣子的:
tianyan = pd.read_excel("C:/Users/*/Documents/tiany.xlsx",header=None,names= ["mail"])
spam = pd.read_excel("C:/Users/*/Documents/spam.xlsx",header =None,names=["mail"])

兩個表字段都命名為”mail",方便后期處理

然后在每個dataframe后面加一列,用于區分
tiany表在后面加了一列:tiany,
spam表在后面加了一列:spam (字段名和值相同)

tiany["tiany"] = "tiany"
spam["spam"] = "spam"

2、合并兩個dataframe,找到tiany中沒有包含spam的郵箱

谷歌后用pd.merge函數,參照舉例及文檔,選擇left

pd.merge(tiany,spam, how= "left", on = "mail")

最后的行數與tiany相同,要取最后一列為NaN的數據

3、計算結果

要保留最后一列為NaN的郵箱列
如果用excel的話就很方便了,先篩選最后一列為"NaN"的值,然后篩選第一列的郵箱,復制到新表另存為即可。

在python的話,要先選擇最后一列為"NaN"的值。選spam的好選,如果是"NaN"的話就要報錯了。

上面這個圖是看有多少是spam的值,下面這個圖是把只選最后一列為“NaN”的值,記得在前面加一個
~表示反選。(網上太多人抄別人的文章了,就不能自己寫嗎  ̄へ ̄)

感謝STACK OVERFLOW網站,最后找到了反選的方法

這樣還是沒有完的,因為最后只保留第一列郵箱,其他的不要。所有上面的代碼沒問題,我就把值賦值給了email,然后再把最終結果保存到csv中

4、保存結果

先賦值給email_result
(新手就老老實實把步驟寫好,打好基礎,坑踩兩次就好了)

email_result = email.mail
email_result

再保存

email_result.to_csv("C:/Users/xiaom/Documents/email_result.csv")

保存之后發現有索引,算了,就這樣把,沒啥影響。

第一篇博客就到這,用了這么久時間寫,希望自己能不要重復踩坑,拜拜。
(寫這么長,希望別被抄走了,轉載、復制之類請發送站內信給我。雖然不一定會有人看到,但還是要說明一下)

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/44880.html

相關文章

  • CentOS7.3 編譯安裝 Python3.6.2

    摘要:我使用的是安裝查看是否已經安裝默認安裝了因為一些命令要用它比如它使用的是使用命令查看一下是否安裝然后查看一下可執行文件的位置進入到目錄月月月可以看到可執行文件指向,又指向也就是說命令執行的系統預裝的要安裝的其他版本先執行命令 showImg(https://segmentfault.com/img/remote/1460000012923762); 我使用的是 CentOS7.3 安裝...

    yibinnn 評論0 收藏0
  • Python入門-Python簡介

    摘要:年月宣布支持時間延長到年。更詳細的發布列表參閱官網的版本號分為三段,形如。其中表示大版本號,一般當整體重寫,或出現不向后兼容的改變時,增加表示功能更新,出現新功能時增加表示小的改動如修復了某個,只要有修改就增加。年公司正式發布。 < 返回索引頁 Python語言簡介 Python介紹及發展 介紹 Python 官方網站:https://www.python.org/, 大家可以到此處下...

    Java_oldboy 評論0 收藏0
  • 寶塔面板,升級默認python2.7為python3.X,并共存!

    摘要:雖然寶塔自帶了管理器,但是這個玩意并不好用。設置為默認版本的默認路徑,在下面。這里也可以看到寶塔的默認版本為,需要使用命令才可以看到。此時的和也已經共存。centos7的默認python版本為2.7,但是2.7這個版本太老了,很多童鞋想升級為高版本。雖然寶塔自帶了python管理器,但是這個玩意并不好用。此外centos的很多命令是基于py2.7,所以你升級python,請不要刪除舊版本,新...

    Astrian 評論0 收藏0
  • Awesome Python II

    摘要: Caching Libraries for caching data. Beaker - A library for caching and sessions for use with web applications and stand-alone Python scripts and applications. dogpile.cache - dogpile.cache...

    lx1036 評論0 收藏0
  • 編程書單:十本Python編程語言的入門書籍

    摘要:本文與大家分享一些編程語言的入門書籍,其中不乏經典。全書貫穿的主體是如何思考設計開發的方法,而具體的編程語言,只是提供一個具體場景方便介紹的媒介。入門入門容易理解而且讀起來幽默風趣,對于編程初學者和語言新手而言是理想的書籍。 本文與大家分享一些Python編程語言的入門書籍,其中不乏經典。我在這里分享的,大部分是這些書的英文版,如果有中文版的我也加上了。有關書籍的介紹,大部分截取自是官...

    desdik 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<