こんな方におすすめ
- pythonを使ってExcelのセルに代入したい人
- どのサイト見てもなんだかわかりづらくて、pythonが難しく感じる人
どうもわやです。
Pythonライフ楽しんでますか?
私も機械メーカでの勤務の傍ら、Pythonを使って遊んでいます。
この記事では、Pandasを使ってエクセルの特定セルに入力をするプログラムを紹介したいと思います。
こういう記事を書こうと思ったきっかけがどこを調べてもいまいちわかりづらいんですよね。わかりやすく書いている記事が少ない。。
なので、わかりやすく書くことを意識します。
どのサイト見ても読むだけで疲れる書き方してあります。プログラマーが備忘録的に書いてある記事は特に難しいですね。
Tensorflowを使って画像認識するコードも作成しました。気になる方はご覧ください。
pandasでExcelのセルを指定して入力する方法
まずエクセルファイルを準備します。簡単に以下のようなエクセルを作ります。
準備
このファイルをpythonを実行するフォルダに保存しておきます。
企業 | 売上 | 利益 |
A社 | 100 | 10 |
B社 | 200 | 5 |
C社 | 150 | 30 |
↑こんな感じのエクセルファイルを作りました。
それではさっそくどうやって入力するのかやっていきます。
B社の売上を200→2000に変更しようと思います。
iatを使う
こういうときに役立つのが、iatです。
iatは、エクセルのセルを行列の数字を指定できます。
iatで入力したいセルを選択して、2000を代入します。
import pandas as pd #pandasをインポート pd = pd.read_excel("test.xlsx") #先ほど作成したエクセルファイルを読み込みます。 pd.iat[1,1] = 2000 #B社の売上を選択して2000を代入
これでできます。めっちゃ簡単ですね。
簡単に解説
簡単に解説しますが、
【発展】pandasでExcelのカラム名とインデックス名を指定してセル選択
中には、膨大な行数・列数のエクセルファイルを使っていて、数字を数えていられないという方も多いかと思います。
そういう時に役立つのが、atです。
atを使うことで、セルを数字ではなく、カラムとインデックスを文字列で指定できます。
実際に使ってみるとこんな感じです。
import pandas as pd pd = pd.read_excel("test.xlsx",index_col = 0) pd.at["B社","売上"] = 2000
これも簡単ですね。何が変わったのかというと、
こんなことをしています。
結論:pandasでExcelのセルを指定したいなら、atやiatを使う
pandasは非常に便利なpythonのライブラリです。
僕も日々勉強しながら、業務にpythonをいかしていますので、みなさんも勉強して業務を改善していきましょう。
今後も学習したことを発信しますので、良かったら見てみてください。
以下の記事では、私自身がpythonを使えるようになるために利用したUdemyのおすすめ講座をまとめています。
合わせてご確認ください。