iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 25
0
自我挑戰組

資工的日常系列 第 25

PYTHON pandas 操作Excel 基本介紹

2018/1/15 新增Excel的資料,當時忘記給了

最近的作業要用python操作Excel,今天來介紹一下我用到的方法。
操作環境:Anaconda,Jupyter notebook
首先先用工作管理員開Anaconda prompt下這行指令來安裝pandaa

pip install pandas

在Jupyter上程式碼的部分

#把pandas import進來並簡寫為pd
import pandas as pd
# 用pandas的read_excel('你的Excel檔名加副檔名')來讀Excel的東西,然後丟給df這data frame。df就想成是在程式裡我們已經抓到的Excel資料
df = pd.read_excel('TEST.xlsx')

我要根據Excel第2行來決定第1行的內容,以下透過for迴圈操作

i=0;
catch=''
# df.地址,在read_excel()進來時,第一列就會被當成他的屬性。所以df.地址就抓到地址這一行
#接著把地址這行的資料一個一個餵給catch,注意如果吃到的是空格的話會被視為float的type(不能用來iterable)
for catch in df.地址:
    try:
#如果抓到的字串有'台中市'三個字的話,回傳true給validate
        validate='台中市' in catch
    except:
        print(i)
        i+=1
        continue
    if(validate):
#df.iloc[x,y]可以抓到Excel表上某個位置。也可以直接改值,不過最後還是要存檔不然只會留在程式裡。
        df.iloc[i,0]='台中'
    else:
        df.iloc[i,0]='其他'
    i+=1
# df的to_excel('檔名加副檔名',sheet_name='Excel表的名稱')可以讓你把修改後的資料放進Excel,檔名也可以用同一個Excel做更新
df.to_excel('TEST_result.xlsx',sheet_name='sheet1')

有關iloc[a,b]指的位置:
https://ithelp.ithome.com.tw/upload/images/20180114/20107866Nt7o7xASo9.png

結果:
https://ithelp.ithome.com.tw/upload/images/20180114/20107866rYUDp4qLdb.png


Excel資料
TEST.xlsx
分類 地址
407台中市西屯區台灣大道四段1727號
407台中市西屯區文華路100號
701台南市東區大學路1號
433台中市沙鹿區台灣大道七段200號
811高雄市楠梓區高雄大學路700號
10617台北市大安區羅斯福路四段1號
403台中市西區向上北路


上一篇
SQL Select,Distinct,Where
下一篇
HTML Bootstrap 4 Modal
系列文
資工的日常30

尚未有邦友留言

立即登入留言