pandasを使ってexcelのvlookup関数を実装する
2022-02-18 22:30:54
1. データを読み込む
import openpyxl
import pandas as pd
df1 = pd.DataFrame(pd.read_excel('table1.xls',sheet_name = 'Sheet1'))
df2 = pd.DataFrame(pd.read_excel('table2.xls',sheet_name = 'Sheet1'))
>>> df1
Student Number Name Class
0 1 Zhang San 1 class
1 2 Li Si 1 class
2 3 Wang Wu 2 class
3 4 Zhao Liu 3 class
4 5 Qian Qi 3 class
>>> df2
No. Name Score Rank
0 1 Zhang San 100 1
1 2 Li Si 99 2
2 3 Wang Wu 98 3
3 4 Zhao Liu 96 4
2. vlookup関数の実装
# only add the score column in table1, not the rank column
result = pd.merge(df1,df2.loc[:,['number','score']],how='left',on = 'number')
>>> result
Number Name Class Score
0 1 Zhang San 1 class 100.0
1 2 Li Si 1 class 99.0
2 3 Wang Wu 2 class 98.0
3 4 Zhao Liu 3 class 96.0
4 5 Qian Qi 3 class NaN
3. 結果の保存
writer = pd.ExcelWriter('result.xlsx')
result.to_excel(writer,index=False)
writer.save()
関連
-
[解決済み】ピアソン相関計算中に「ValueError: Connectenation axis のすべての入力配列寸法は正確に一致しなければなりません」を取り除くには?
-
[解決済み] ImportError: IProgress が見つかりませんでした。インストールされていますが、jupyterとipywidgetsをアップデートしてください。
-
[解決済み] モジュール 'pandas' には属性 'Panel' がありません。
-
pandas DataFrame を日付比較に変換するとき、datetimelike 値の .dt アクセッサしか使用できないエラーが発生しました。
-
pandas 基本特性メソッド ランダム整理(3つ) --- 記述統計 / 重複排除カウント / グループソート
-
pandasがDataframeやSeriesを扱うとき、カラム名なしでデータのカラムを受け取る。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ハートビート・エフェクトのためのHTML+CSS
-
HTML ホテル フォームによるフィルタリング
-
HTML+cssのボックスモデル例(円、半円など)「border-radius」使いやすい
-
HTMLテーブルのテーブル分割とマージ(colspan, rowspan)
-
ランダム・ネームドロッパーを実装するためのhtmlサンプルコード
-
Html階層型ボックスシャドウ効果サンプルコード
-
QQの一時的なダイアログボックスをポップアップし、友人を追加せずにオンラインで話す効果を達成する方法
-
sublime / vscodeショートカットHTMLコード生成の実装
-
HTMLページを縮小した後にスクロールバーを表示するサンプルコード
-
html のリストボックス、テキストフィールド、ファイルフィールドのコード例