LoginSignup
8
17

More than 5 years have passed since last update.

Python:Pandasでエクセルリストを読んで、Vlookup的な事をする

Posted at

概要

前回つくったTIFFをPDFに変換するコードで
元のTIFFファイルに送信元FAX番号がついていたので、電話帳から番号をキーにして
法人名を当て込むコード

使用環境

インタープリター:Python3.6
使用ライブラリ:Pandas
使用ファイル:xlsx
※例:下記のようなエクセルファイルでつくった電話帳
テスト.png

コード

Pandas_test.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import pandas as pd

# 読み込むエクセル一覧
input_file_name = 'C:/test.xlsx'

# xls book Open (xls, xlsxのどちらでも可能)
#ファイルからシートネームの取得
input_book = pd.ExcelFile(input_file_name)
#ブックからシートネームの取得
input_sheet_name = input_book.sheet_names
#一枚目のシートから2時配列をパース、データ型はオブジェトで読まないと詰む
input_sheet_df = input_book.parse(input_sheet_name[0], dtype='object')
#2字配列を表示
print(input_sheet_df)

#キーとなる電話番号例
Bangou="111222333"

#条件指定を指定する。※queryで変数使う場合は@使わないと詰む
result =input_sheet_df.query('FAX == @Bangou')
print(len(result))

#検索する番号が配列にある場合は2列目の値を持ってくる
#同じ番号はリストにないものとして考えてます。
if len(result) >= 1:
    result=(result.iat[0, 1])

#結果表示
print(result)

結果

法人Aだけ表示される筈です。
ファイル名の置き換えをしたかったので書いてみた

8
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
17