14:50 あたりのところでは画面上は(以下の3行目部分) シングルクオテーションが多めにかいてあったのですが、キノコードさんの音声でのご説明どおり以下のように記述すればうまくいきました(*´▽`*) for i in company_name: df_order_company = df_order[df_order['会社名'] == i] df_order_company.to_excel(export_file_path+i+'.xlsx') ←この行
学生なのですが、変数名iを使うときはiが個人的にはindexの略と勝手に思っているためにrangeなどのループで使うイメージです。実際に実務で使うときはどーなんでしょう。このくらいの自動化であればそこまで気にしなくていいんでしょうか? 一つ目のfor文なら会社名の変数名をcompany_namesにして、for company_name in company names:〜にしてしまいそうです。 →変数名には基本的には意味を持たせろって習ったもので、少し違和感が。。。 (csvのインポートとデータの整形だけでpandasを使っていたので、とても参考になりました。)
非常に分かりやすい動画をありがとうございます。勉強になります。 質問なのですが、15:45のようにコマンドプロンプトでpythonを実行するときによく、 NameError: name 'get_ipython' is not defined というエラーが生じます。 いつも、エラーを回避するために、pythonファイルを編集して、get_ipythonを# でコメントアウトしてから、再度実行しています。 このようにいちいち編集することなく、エラーを防ぐ方法がございますでしょうか?
メモリの大きさによるらしいです。Pandasが設定している制限はないそうです。そこまで大きなデータを扱ったことないので分かりませんが、Power Query M Languageよりも早く大量のデータをpandasなら処理できます。それぞれ数千行から数万行ある数個のExcel FileをSQLみたいに結合して出力する作業も数秒で終わります。
!pip install openpyxlを入力すると、 /bin/bash: pip: command not foundと返ってきます また、 import pandas as pdと入力すると、 ModuleNotFoundError: No module named 'pandas'と返ってきます 先週まで、普通にキノコードさんの動画でやっていたのですが、なぜでしょうか、、
df_orderを実行すると、NameError: name 'df_order' is not defined と出てきてしまいます。 ファイルのパスを入力するところがよくわからず、 ここが原因ではないかと考えてキノコードさんと同じ名前でデスクトップにダウンロードしたファイル置きましたがうまくいきません。解決方法を教えてください
【Python学習 といえば、キノクエスト】
キノコードが作ったプログラミング学習サービスが登場!
「やってみたい」から「できた」へ
・Pythonに興味がある
・業務を効率化したい
・アウトプットしてみたい
・学習方法に不安がある
▼登録はこちら▼
kino-code.com/kq_service_a/?.com&CuXm7Ns_comment
海外にはこうゆうのやってくれる人多いけどやっぱり理解しにくいので日本語でやってくれるのは嬉しい
言葉がありません。これほどのものをシェアしてもらえて本当にありがたいです。
こういった嬉しいコメントは、キャプチャをとって、保存しています!笑 保存が一つ増えました!ありがとうございます!
9:28 のところで「AttributeError: 'ElementTree' object has no attribute 'getiterator'」というエラーが出たのですが、「df_order = pd.read_excel(import_file_path, sheet_name=excel_sheet_name, engine='openpyxl')」とengineオプションを付け加えたら上手くいきました。
説明が非常にわかりやすく、声も聞きやすい、編集も美しく最高です。
素晴らしい動画をありがとうございます。
賛辞!嬉しいです、ありがとうございます!
わかりやすく見飽きない動画をこれからもたくさん作ります!
大学でPythonの授業があって、その延長で本一冊勉強したけど、やりたいことなくて忘れつつあったんですけど、勉強した先の応用を知ることができてモチベになりました。本当にありがとうございます。
大学の授業でPythonですか。今の時代はJavaじゃないのですね。とっってもためになりそうな授業ですね。モチベを与えられてよかったです!次回以降もお楽しみに!
便利でいいですね。
会社のPCには勝手にインストールできないので、ExcelやAccessのVBAでコソコソやってます。
お世話になっております。
本日、中古で4万円の古いPCをGETしました。
Pythonの環境設定まで完了しました、ここからドンドン進めていきたいと思います!
動画作成、頑張ってください!
感動しました🥺pythonって凄く便利ですね!しかもとても丁寧に説明してくださってわかりやすいー!
初心者ですが結構びっくりしました。Pythonがドラえもんみたい。環境構築したら一瞬で仕事が終わりますね。
秀逸な表現ですね。ドラえもんはロボットロボットには人工知能が入っている。pythonでは人工知能が作れる。そういう意味だとpythonはドラえもんかもしれないですね!
一分見ない内に高評価チャンネル登録させていただきました。
優良な情報をありがとうございます。
1分で!ありがとうございます!次も1分でいいねを押していただけるようにいい動画を作ります。
パイソンってggったら、入門コースを発見して、チャンネルみはじめました。ありがとうございます!わかりやすくて、とりま動画全部見ようと思ってます。python中級編もあったらいいなぁ。
プログラミングで何を実現したいのかによります。Pythonの理屈を勉強するより、実践していくことをキノコードでオススメしています。
非常にクオリティ高いですね!参考にさせていただきます!
とても落ち着いた気持ちのいい話し方ですね。
こそばゆい感じがしますが、このアドバイスを受けてもう少し工夫することに決めました。有益なコメントありがとうございます。
@@kinocode 皮肉や嫌みではないですよ。
念のため
アップロードありがとうございます。Pythonを初めて使いはじめました。とても参考になります。
ファイルの読み書きはVBAよりも楽ですね 知らなかったのでありがとうございます
Pythonでルーチンワークを自動化していたりしますがプログラムを書く時間と都度の時間と回数の積とを比べると都度やったほうが早かったり。
参考書ゆり、わかりやすいです。
ずっと前からできたことなのかもしれないけど、シークバーが目次になっていて感動しました(笑)
最近やり方を覚えました。短い動画には設定できないようですぞ。
いつも勉強させてもらっています。
excelへの書き出しはできたのがですが、その後の15:35秒くらいのところの説明のPythonへの書き出しが良くわかりません。
どのファイルに書き出せばよいのでしょうか。
また、VS codeでもPythonは使用可能なのでしょうか。
他力本願ですが会社の部署にPythonに詳しい人がいれば良いのにと思いました。
Excelで面倒くさい作業で時間をかかってました。ただし上司が許可してくれるまでが難しいかな(笑)
複数のエクセルファイル のサンプルデータがネットで見つからないんで、あったら教えて欲しいです
14:50 あたりのところでは画面上は(以下の3行目部分)
シングルクオテーションが多めにかいてあったのですが、キノコードさんの音声でのご説明どおり以下のように記述すればうまくいきました(*´▽`*)
for i in company_name:
df_order_company = df_order[df_order['会社名'] == i]
df_order_company.to_excel(export_file_path+i+'.xlsx') ←この行
15:00 を実行するとcan only concatenate str (not "float") to strというエラーがでます
どう対処すればよいでしょう
会社名やディレクトリの変数を数字にしていたりしませんか?
数値型の変数を文字列として扱いたい場合はstr(変数)で文字列にするとつなげます。
Pythonのイントネーションって、パイセンと同じなんだ!
パイセンではなく、ダイソンと同じようです…。
Udamyでお金取れるレベルですよ!
勉強になりました!
えー!!うれしいなうれしいな!!!これからもそういっていただけるように頑張ります!
ご質問させて下さい
14:51 Excelファイルに書き出すto_excelメソッドで
df_order_company.to_excel(export_file_path+'/'+i+’.xlsx')
とコードを書いてもファイルが作成されず、
色々試しコードを変えて、df_order_company.to_excel('output.xlsx')とすると
株式会社Zだけが作成されます。
初心者で大変申し訳ございませんが、ご教示いただければ幸いです。
よろしくお願い致します。(*OSはwindowsです)
df_order_company.to_excel(export_file_path+'/'+i+’.xlsx')
ここは、for文の中にありますか?
------------
for i in company_name:
df_order_company = df_order[df_order['会社名'] == i]
df_order_company.to_excel(export_file_path + '/' + i + ’.xlsx')
------------
直前の「df_order_company = df_order[df_order['会社名'] == i]」もうまく動いているか確認してみてください!
@@kinocode
私が入力したものをコピペしました
for i in company_name:
df_order_company = df_order[df_order['会社名'] == i]
df_order_company.to_excel(export_file_path+'/'+i+'.xlsx')
直前の「df_order_company = df_order[df_order['会社名'] == i]」も動作しています
shift + Enterで下記のエラーがでます
FileNotFoundError Traceback (most recent call last)
1 for i in company_name:
2 df_order_company = df_order[df_order['会社名'] == i]
----> 3 df_order_company.to_excel(export_file_path+'/'+i+'.xlsx')
あっ…続きのエラー詳細も欲しいです!
可能でしたら!
@@kinocode
色々とすみません・・・自己解決致しました
前述の↓
import_file_path = 'C:\\Users\\papa\\Desktop\\MyPandas\\sample.xlsx'
excel_sheet_name = '発注管理表'
この部分⇒(export_file_path = 'C:\\Users\\papa\\Desktop\\MyPandas\\output')
最後のoutput、MyPandasのファイルの中にoutputファイルを作成したら
問題なくA~Zまで作成されました
ご面倒おかけ致しました
これからもよろしくお願い致します
自己解決おめでとうございます!!
色々エラーと向き合うと成長もできますし、がんばりましょう!
導入コストや実際の環境を考えるとVBAが適してると思ってしまった。
すっごいありがたいっす!!!
大変参考になりました。ありがとうございました!
ありがとうございます!自動化を一歩が進むことを願っております!
わかりやすい動画ありがとうございます。
価値のある内容ですね、
RDB接続関連のライブラリもみてみたいです。
RDBMSへの接続については現在動画を作成中です。sqliteへの接続です。サーバーにあるMySQLやPostgresqlへの接続や、やややっかいなのでサーバー上に環境を作ってから別途レッスンを作る予定です!
学生なのですが、変数名iを使うときはiが個人的にはindexの略と勝手に思っているためにrangeなどのループで使うイメージです。実際に実務で使うときはどーなんでしょう。このくらいの自動化であればそこまで気にしなくていいんでしょうか?
一つ目のfor文なら会社名の変数名をcompany_namesにして、for company_name in company names:〜にしてしまいそうです。
→変数名には基本的には意味を持たせろって習ったもので、少し違和感が。。。
(csvのインポートとデータの整形だけでpandasを使っていたので、とても参考になりました。)
おっしゃる通りですね。そちらの方が良いです。他の人が見た時、半年後の自分がみたときのこと、つまり保守性のことを考えると、その方が良いと思います。すばらしい!ただ、このぐらいの自動化であれば、自分用なので、雑な感じで書いてしまうことが多いです…。よくないですね。反省。
勉強になります。ありがとうございます。ところで、Windowsのpathで\\はどのように入力するのですか?¥でもいいのですか?
ご試聴ありがとうございます!
「¥」と「\」は、同じ文字コードですので、どちらを入力されても大丈夫です!
@@kinocode
ありがとうございました。わかりました。
すげえなぁ
もっと勉強します。
15:40秒の所のPythonファイル(py_excel_export.py)についてはどこで作成?すればよいですか?
また、パスをエラーなく実行できたのですが、その次のファイルをどうすればよいのか曖昧です。
左上のfileの中に、pyファイルを生成(保存)する項目がありますよ
@@yuaki2208 File から Export Notebook As... Executable Scriptを実行してみたのですがUntitledというpython Fileがダウンロードされそれを開いても無題となって真っ白な画面が表示されるだけなのですが他に方法はないのでしょうか🙇また解決策をご存知でしたら教えてほしいです
@@rzekao 多分合っていると思います。Untitled.ipynbファイルをpyファイルにしたいなら、Untitled.pyファイルが出来るはずなので。
下の動画の11:20〜見てみてください。
ua-cam.com/video/iTAgip9aaTY/v-deo.html
問題があるとしたら下記でしょうか
・保存したいファイルを選択している状態でボタンを押しているか?(保存したいファイルがUntitled.ipynbなのに、色々操作していたらUntitled1.ipynbファイルを作成(白紙)していてそれを選択していたとか)
・ダウンロードの保存ボタンを押しているか?
非常に分かりやすい動画をありがとうございます。勉強になります。
質問なのですが、15:45のようにコマンドプロンプトでpythonを実行するときによく、
NameError: name 'get_ipython' is not defined
というエラーが生じます。
いつも、エラーを回避するために、pythonファイルを編集して、get_ipythonを# でコメントアウトしてから、再度実行しています。
このようにいちいち編集することなく、エラーを防ぐ方法がございますでしょうか?
こういう実践的な動画はとってもありがたい!
すごい!
プログラミングに慣れると、こういうプログラムを作ろうと思ったらすぐに構想って浮かぶものなんですか?
@@なおなお-l1h はい。このレッスンの内容であれば「こうやってやればできるな」ってすぐに頭に浮かびます。思い浮かばない場合でも「こうやって検索すればきっと答えはみつかるな」ってなります。これはプログラミングのセンスとかではなく、パターンがあるものなので勉強すればできるようになりますよ!
動画を見させていただき、ファイル分割できました。業務に活用できます。ありがとうございます!一つ教えていただきたいのですが、元データに数式などが入っているデータは分割する際に引き継ぐことはできますでしょうか?
3:48
sample.xlsx は、自分で手書きで作らなければならないのですか?
レッスンで使用しているデータは、全てキノコードのWebサイトからダウンロードできます!
概要欄に記載しておりますので、他のレッスンでもご利用ください。
▼こちらからどうぞ。
kino-code.com/python_automation_operate_excel/#toc25
ありがとうございます!
8:26からの3つの目のPathはどこのPathをコピペしますか?1つ目がEXCELのファイルで2つ目がそのEXCELの中のシートというのまで理解できたのですが、3つ目のExport先のPathはEXCELのPathですか?
3つ目は、書き出すExcelの場所と名前です!
@@kinocodeお忙しいところ返信ありがとうございます。新たにEXCELファイルを作成して、それのパスを貼るということでお間違いないでしょうか?
書き出すときにExcelができますので、作成する必要はありません。
書き出したいフォルダに書き出したいファイル名です。
2倍速でちょうどいい動画
ゆっくり味わってもみてね!
最後までコーディング終わって実際どうやって使うのかまで教えてほしい。。。実行する手順というか
VBAはある程度使えるから最近のPythonの勉強を始めました。
両者で出来る大きな違いがまだ分からないし、
動画を拝見してもPythonで何をしているかイメージ出来ないので
さらに勉強を続けていきたいと思います。
同じプログラミング言語なので、できること多さに違いはないと思います。
ただし、Pythonは色々なことができます。データ分析や予測、人工知能開発、Webアプリ開発など。なので、個人的には同じ勉強をするならPythonかなと思っています(職場環境や背景などは違うとは思うので断言できませんが)。まずは明日の生活や仕事を1%よくなることから勉強を続けられると良いと思います。徐々にご自身のやりたいことも含めイメージできてくると思います。
VSCodeからTexを用いた使い方を教えて欲しいです。
動画配信ありがとうございます!まだマクロも勉強できていないのですが、Paythonを覚える前にマクロを学んだ方がいいのでしょうか?
プログラミングに関しては、基本は学んでいます。
具体例その2のエクセルのサンプルファイルはどちらにありますか?
文字起こしのブログを、拝見させていただきましたが、具体例1のサンプルファイルしか見つからなかったので
jam ワークシートに分かれてあるはずです。ご確認くださいまし!
キノコード / プログラミング学習動画のUA-camr 私も見つかりません
【問題点】レッスン後半のサンプルファイル(分割された営業所ごとのデータ)がない
【記入日】2021/03/29【環境】Windows10
【解決策】自分で「予実管理表」サンプルファイルを作成する。
下記プログラムを実行することでサンプルエクセルファイルが作成できます。
(ほぼほぼレッスン前半のプログラムを流用しています。)
"""
import openpyxl
import pandas as pd
import_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\\sample-1.xlsx" #パスは人それぞれです。
excel_sheet_name = "予実管理表"
export_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\
awdate" #事前に「rawdate」フォルダ作成しましょう
df_order = pd.read_excel(import_file_path,sheet_name = excel_sheet_name)
company_name = df_order["支店"].unique() #会社名をユニークとして取得
company_name #会社の確認
for i in company_name:
df_order_company = df_order[df_order["支店"]== i ]
df_order_company.to_excel(export_file_path + "\\" + i + "支店.xlsx")
"""
先生ありがとうございました!
わかりやすい動画ありがとうございます。大変参考になりました。続きがとても楽しみです。
仕事で大量のデータをexcel vbaで処理するケースがあるのですが、excelでは扱えないようなデータ量でもpythonでサクサク扱うことができるのでしょうか?
メモリの大きさによるらしいです。Pandasが設定している制限はないそうです。そこまで大きなデータを扱ったことないので分かりませんが、Power Query M Languageよりも早く大量のデータをpandasなら処理できます。それぞれ数千行から数万行ある数個のExcel FileをSQLみたいに結合して出力する作業も数秒で終わります。
Pythonのデータ処理容量はsqlを利用すればexcelに比べてかなり高いですが勿論限界はあります
ExcelVBAとPythonの処理速度を比べた時、どちらが処理早いでしょうか。VBAではなくPythonでエクセル操作するメリットって何でしょうか?
Excel内部の実行環境がどれほど優秀かは分かりませんが、一般的にvbaとPythonであればvbaの方が実行速度は早いと思います
独学でわからなかった構文の意味がするする分かって楽しい
少しでもお役に立てたよう良かったです。
見たらわかる優しい男や
ありがとうございます。笑 その言葉に恥じないような「優しい男」になれるよう努めてまいります!
これはジュピターラボでなくても
VScodeでも出来ますか❓
小6ですPython習ってます
小6でPythonですか!いいですね〜!
もちろん、VSCodeでもできますっ!
ありがとうございます
頑張ります🔥
編集おしゃれですね…時間かかってそうです
自動化したいですね(笑)
Pythonで自動化したい…
作成したプログラムを社内で共有使用する場合、メニュー画面の様なものを作成してクリックで起動する様な仕組みにするのでしょうか?コマンドラインで起動する以外で実務的な起動方法を教えて頂けると助かります。
ExcelVBAとどっちが楽ですか?汎用性がありますか?
汎用性であればPythonの方があると私は思います。
一旦juprterを終了したらあらためて、!pipからタイプする必要があるのでしょうか?
いえ、2回目以降は!pip~~はコメントアウトして大丈夫です!
1回目のみ、インストールに必要なコードです。
どんどん自動化のパターンを作っていけるといいですね!
@@kinocode ありがとうございます。
初心者がクラウドソーシングで仕事に繋げやすい技術ってなんだと思いますか?
ワードプレスがよく紹介されますけど、デザイン力がないときついですよね
今はゲームを製作しています
クラウドソーシングで受注をしたことがないのでなんともいえませんが、ワードプレスかもしれないですね。ただし、ワードプレス単体で受注するのは少し弱いかもしれません。GoogleAnalyticsで分析と施策をセットで提案したり、SEOで検索を上位にあげるなどのスキルもセットで販売できなきゃ少し弱い気がします。なので、まずは無料でもいいのでワードプレスで制作をさせてもらって実力がついたらお金をもらうって仕組みが良い気がします。ワードプレス以外だとどうなのでしょうか?一度検索してみると良いと思いますよ!
@@kinocode
回答ありがとうございます。
そうですね。サイト製作はSEOなども含めたコンサルみたいなものですよね。
手直しだけの案件もあるようなので、ハードルの低いものからチャレンジしてみます。
いつも感動してレッスンを受けています
@ globによるファイル名の取得
rawdateパス内にエクセルが生成されないですが
そもそもこのファイルはあらかじめ準備しておくべきファイルなのでしょうか?
もしくは、sample.xlsxのファイルから自動生成されるのでしょうか?
この辺をご教授頂きたく
【問題点】レッスン後半のサンプルファイル(分割された営業所ごとのデータ)がない
【記入日】2021/03/29【環境】Windows10
【解決策】自分で「予実管理表」サンプルファイルを作成する。
下記プログラムを実行することでサンプルエクセルファイルが作成できます。
(ほぼほぼレッスン前半のプログラムを流用しています。)
"""
import openpyxl
import pandas as pd
import_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\\sample-1.xlsx" #パスは人それぞれです。
excel_sheet_name = "予実管理表"
export_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\
awdate" #事前に「rawdate」フォルダ作成しましょう
df_order = pd.read_excel(import_file_path,sheet_name = excel_sheet_name)
company_name = df_order["支店"].unique() #会社名をユニークとして取得
company_name #会社の確認
for i in company_name:
df_order_company = df_order[df_order["支店"]== i ]
df_order_company.to_excel(export_file_path + "\\" + i + "支店.xlsx")
"""
!pip install openpyxlを入力すると、
/bin/bash: pip: command not foundと返ってきます
また、
import pandas as pdと入力すると、
ModuleNotFoundError: No module named 'pandas'と返ってきます
先週まで、普通にキノコードさんの動画でやっていたのですが、なぜでしょうか、、
質問です。
ipynbのコードは、MyPandasに入れておかないと作動しないという解釈であってますか?
例えば、ファイルのパスを設定したら、ipynbのコードの場所関係なくデータを抽出できますか?
言葉足らずかもしれませんが、教えていただけると助かります。
ipynbの保存場所は、どこでもOKです。
動画では、説明のしやすさや管理のしやすさの面で「MyPython」「MyPandas」というフォルダを使いました。
そしてご理解されている通り、他のファイルを指定する場合は、パスを記述して指定すれば読み込みや書き出しができます。
@@kinocode 解答ありがとうございます😭
勉強になりました!
いきなり申し訳ありませんExcelのデータはそこで手に入れられるのでしょうか
こちらからどうぞ!
kino-code.com/python_automation_operate_excel/#toc25
ありがとうございます!実際に使用されているのを使いながらの方がやっぱり分かりやすくてさらに理解が深まりました。ありがとうございます😊
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
Cell In[5], line 1
----> 1 import openpyx1
2 import pandas as pd
3 import glob
ModuleNotFoundError: No module named 'openpyx1'
こうなってしまいます。
どうすればよいでしょうか?
1(いち)ではなく、l(エル)ですね!
openpyxl で試してみてください!
最近Pythonを始めた身としては非常に為になる投稿ではあるが最終的にどのような形(アプリ?)で
使用するのかが見えてこないのでそこまでやって頂くとより助かります。
おっしゃる通りですね。その動画については、次回と次次回で紹介する予定です。チャンネル登録をしてお待ちいただけますと幸いです!
Windows10の場合、py_excel_export.pyに変換するとエラーになります。
numpyのランタイムエラー
いろいろ調べたら、Windows側の2004のアップデートがnumpyに悪影響与えているそうです。イランク下げてのエラーになるので、numpy1.18.1まで下げました。
正常に動作しました。
キノコードさんこんにちは、ありがとうございます。
vscodeとanaconda3のダウンロードを終えると、ユーザーフォルダーがいっぱいで、ほぼ限界の用でPCの動作が怪しくなってきてしまいました。
Cドライブ上のユーザーフォルダーに格納されています。外付けハードディスクGドライブに移す方法が在りましたら教えてください。
ドライブを移すには、アンインストールをしてからインストールし直す必要がありますが、プログラムファイルを外付けに、ということはあまりお勧めできません。。
外付けドライブには、移しても影響のない動画ファイルや画像ファイル、書類などのデータを保存されてはいかがでしょうか?
いつも有益な動画をありがとうございます!
Pythonをインスタグラムに応用することは可能でしょうか?
そもそもインスタはPythonでできてた気がします
仕事を自動化するイメージができました。あとは設定して、作り込むだけです^^♪
データ集計に関わる人達に喜んでもらえるように頑張ります!
また他の動画もあわせて学習していきます。ありがとうございました🙏✨
為になる動画ありがとうございます!10:35 あたりのdf_order = pd.read_excel(import_file_path, sheet_name = excel_sheet_name)を入力すると
NameError Traceback (most recent call last)
in
----> 1 df_order = pd.read_excel(import_file_path, sheet_name = excel_sheet_name)
NameError: name 'pd' is not defined
とエラーが出てしまうのですが、対策方法ご教授頂けませんでしょうか。よろしくお願いします
「import pandas as pd」のところが実行されていないのかもしれません。
ここをもう一度実行してからお試しください!
@@kinocode 無事解決しました。誠にありがとうございます。これからも動画を見て頑張りたいと思います!
すみません、ソースコードやエクセルファイルはどこから入手できますか?
概要欄にあるリンクからどうぞ!
こんにちは。いつも動画を拝見させていただいております。
CSVファイルの数字群をExcelのフォーマットに自動でコピーするプログラムを作りたいのですが、どのようにコーディングすればよいかわかりません。
お時間ありましたらご回答お願いします。
ExcelVBAで簡単にできます。
いつも動画ありがとうございます、rawdata はどちらにありますでしょうか?
ありがとうございます!
KinoCodeブログにファイルを用意しています。
目次の「レッスンで使ったファイルはこちら」から移動していただき、ダウンロードしてください。
kino-code.com/python_automation_operate_excel/
sample.xlsx 内にあるという事ですね、ありがとうございます!
taku ura 学習頑張ってください!
【問題点】レッスン後半のサンプルファイル(分割された営業所ごとのデータ)がない
【記入日】2021/03/29【環境】Windows10
【解決策】自分で「予実管理表」サンプルファイルを作成する。
下記プログラムを実行することでサンプルエクセルファイルが作成できます。
(ほぼほぼレッスン前半のプログラムを流用しています。)
"""
import openpyxl
import pandas as pd
import_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\\sample-1.xlsx" #パスは人それぞれです。
excel_sheet_name = "予実管理表"
export_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\
awdate" #事前に「rawdate」フォルダ作成しましょう
df_order = pd.read_excel(import_file_path,sheet_name = excel_sheet_name)
company_name = df_order["支店"].unique() #会社名をユニークとして取得
company_name #会社の確認
for i in company_name:
df_order_company = df_order[df_order["支店"]== i ]
df_order_company.to_excel(export_file_path + "\\" + i + "支店.xlsx")
"""
18:19以降での分割されたExcelファイルは何処で入手可能ですか?
【問題点】レッスン後半のサンプルファイル(分割された営業所ごとのデータ)がない
【記入日】2021/03/29【環境】Windows10
【解決策】自分で「予実管理表」サンプルファイルを作成する。
下記プログラムを実行することでサンプルエクセルファイルが作成できます。
(ほぼほぼレッスン前半のプログラムを流用しています。)
"""
import openpyxl
import pandas as pd
import_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\\sample-1.xlsx" #パスは人それぞれです。
excel_sheet_name = "予実管理表"
export_file_path = "C:\\Users\\cid13\\Documents\\MyPandas\
awdate" #事前に「rawdate」フォルダ作成しましょう
df_order = pd.read_excel(import_file_path,sheet_name = excel_sheet_name)
company_name = df_order["支店"].unique() #会社名をユニークとして取得
company_name #会社の確認
for i in company_name:
df_order_company = df_order[df_order["支店"]== i ]
df_order_company.to_excel(export_file_path + "\\" + i + "支店.xlsx")
"""
ケース2のfile_path = glob.glob(path)を入力すると、NameError: name 'glob' is not definedと出てきます。何が問題なのでしょうか?
ちなみにwindows版です。
export_file_path = 'C:\\Users\\user\\Desktop\\MyPandas'
import_folder_path = 'C:\\Users\\user\\Desktop\\MyPandas\
awdata'
path = import_folder_path + '/' + '*.xlsx'
file_path = glob.glob(path)
import glob
ここが抜けているのかもしれません!ご確認くださいませ。
非常にわかりやすかったです。
pythonを使うことで数百個あるCSVファイルから特定の行、列のデータを取り出して、それらを繋げることで一つのグラフを作成することは可能でしょうか?
規則性やルールがあればできると思います。
こちらの自動化の3回目の挑戦
後半の分割ファイルを1つにまとめる前処理
###
import_file_path = 'C:\\Users\\VirtualUser\\Desktop\\MyPandas\\sample.xlsx' #読み込むファイル
excel_sheet_name = '予実管理表'
export_file_path = 'C:\\Users\\VirtualUser\\Desktop\\MyPandas\
awdate'
df_BA = pd.read_excel(import_file_path, sheet_sheet = excel_sheet_name) #BA = Budget and Actual
branchName = df_BA['支店'].unique() #支店
print(branchName) #この1行はなくてもOK
for i in branchName:
df_Branch = df_BA[df_BA['支店'] == i]
df_Branch.to_excel(export_file_path + '\\' + i + '支店' + '.xlsx' )
###
尊敬するUA-camrのキノコード師匠様、Hongo Haruto様の解説ありがとうございました。
分かっていても、応用がきかないものです。
作りたいものを決めて、手を動かして、仲間をつくる。皆さんがんばりましょう!
20万行300列複数シートあるようなExcel書き込みの場合でもPythonは有力ですか?
300列ですか!ちょっときついかもしれないですが試してみてください!いけない場合は、「関係の正規化」で検索してファイルを分割すればよいと思います。一瞬で結合できるので!
なんか英語学習のナレーションみたい(笑)
なるほど。これは良い点ですか?悪い点ですか?良い点なら伸ばしていきます。悪い点なら改善します!
いい点だと思います!英語のナレーションは短くて、論点をはっきりいうので分かりやすいです。
喋りが淀みなく噛まないし聞きやすい
トレーナーとかされてたのかな❓
論点を明確かつ節して伝えると知識不足の人はついていけなくなるかもですね…
でもそういった人に向けた動画を別で用意してくださるのでキノコードさんへの尊敬が増しますね!
こんなに素晴らしい説明をはじめて聞きました。Python勉強してみます!これからも楽しみにしています!
pip installって毎回やらないといけないんですかね
ローカルの環境なら不要です!
GoogleColabでしたら毎回必要です!
[5]のシート名を変数excel_sheet_nameを直接引数として入力するのではなく、わざわざ引数に変数sheet_nameを用意して代入したのには訳があるのでしょうか?
vscodeでも拡張子を.ipynbとすればjupyter notebookの機能を使えるのでそっちでも扱って欲しいです!
後、動画で扱われていたエクセルのサンプルで練習したいのですがどこにありますでしょうか?
ここで作ったipynbをVSCodeで開けばオッケーですよね。VSCodeの紹介動画を作る予定もあるので、そちらで紹介いたしますね。ありがとうございます。
windowsの「ファイルのパスを作成」でバックスラッシュがどうしても打てないのですが、どうやってますか?フォントをどこかで変えているのでしょうか?
和文フォント環境ですと、表示できないことがあるようです。
「¥」が「\」と同じ文字コードとして扱われますので、表示されない場合は「¥」を使用してみてください!
エクセルVBAで作るのと、どう違いますか?
各社ごとのファイルを作成できたのですが、値が全て株式会社Zとなっています。
どんな問題が考えられますでしょうか?
ファイル名は会社別だけど、開くと中のデータが株式会社Zということですよね?
14:50 あたりのfor文の記述も問題なしですか?特に2行目をご確認くださいませ!
ここでの抽出が株式会社Zになってしまっているということだと思います。
@@kinocode
ありがとうございます。
再度書き直してみると解決しました。
ありがとうございます。
ものすごくわかりやすかったのです!
ただ、最初の語りの部分で表情に変化がなく少し怖かったです。笑
表情って大切だなと気づかされました笑
他の方にもコメントでご指摘されたのですね、本当にそうですね。僕自身も目が乾き、コンタクトがカペカペになりました。次回から普通になっているはずです。たぶん!
同じような作業を延々と繰り返すような事務作業なら、コードの使い回しで効率化できるんでしょうね
1回しかやらない作業なら、コードを書くだけで時間かかちゃいますね
Excelよりは楽しいから良き
すごーい。
でもこれが当たり前になったら、自分の仕事なくなっちゃうな〜。フクザツ
その分、他の仕事ができます!
それに、自分の仕事を自動化できたら成果です。より短い時間でたくさんの仕事をこなせるなんて、有能でしかないですよ!
便利だなあ
そうなんですよ。これからも自動化の動画アップしていきますので、よろしくお願いします。
Python、GAS、VBAどれも便利ではあるけど、会社で使うとなると現時点ではVBAに軍配が上がると思います。
このぐらいならわざわざpythonで書くやつおらんよなぁ。pythonの手練習したいなら別だけど
具体的なケース その2
でコードを書くときに使用されているサンプルファイルなどはどこに記載されているのか。使用できるのか。お答えしていただけると幸いです。
KinoCodeブログにて、ファイルを用意しております。
目次の「レッスンで使ったファイルはこちら」から移動していただき、ご利用ください。
kino-code.com/python_automation_operate_excel/
Excelファイルなので、Excel VBA でやった方が簡単に出来そうな気がしますが、これは
Python を使用して、Excelファイルを操作する事例。としての動画という認識で宜しいでしょうか?ExcelVBAを使用するより、Pythonで使用する利点があるのであれば、教えて下さい。
VBAは軽く使った程度なので、なんとも言えないのでそれを承知でお読みください。
Pythonの方が色々できる、色々作れるっていうのが私なりの回答です。
Pythonを使えるようになると、エクセル操作だけじゃなくて、ブラウザ操作、Gmailでメール送信、ツールの操作(API)、データ分析、人工知能開発、Webサイト構築(Webアプリ)など本当に色々なものを作ることができます。
どうせプログラミングを覚えるなら、Excelに特化しているVBAより、Pythonの方が個人的には良いと思います。
Pythonを覚えて色々なことができるようになれば、成果が出て給料があがりキャリアアップできます。また、プログラマやデータ分析職、RPAに関する仕事などにも転職可能かと思います。
あっ!うっかり!!質問はVBAを使用する利点でしたね!VBAができるのでればVBAでも良いと思います。VBAができないのであれば、どうせプログラミングを覚えるならPythonが良いと思います。
理由は上記です。ながながとすみません。
早々の回答、有難う御座います。長々書いて頂いて感謝します。自分はたまたまExcel業務を楽にしたい
思いでVBAを覚えただけなので気になったので質問してみました。
確かにExcel特化ですから、簡単なペイント操作・IEでの写真収集ぐらいはやったことがありますが、
汎用性はPythonがありそうですね。
機会があれば・・いやつくって Pythonも触ってみようかな。^^;
サイコガン VBAがお出来になるならPythonの学習は、比較的スムーズに進むと思います。ぜひトライしてみてください!
Excel VBAではデータ分析、ブラウザ操作、メール送受信、疑似的な人口知能、Cad操作、ゲーム、株取引などをやってますが、Webサイト構築、本格的な人工知能などのローカルよりクラウドではPythonが有利ですね。
VBAもブラウザ操作、メール送信、ツールの操作、データ解析、人工知能開発、ウェブサイト構築、等何でも出来ますよ。プレステ以上の3Dゲームも普通に作ってる人いますし。それに、マクロの記録を使えば全然プログラム知らない人でも通常のエクセル操作をするだけでコードが書けて、それを編集すればいちから書かなくて済むので誰でも始めやすいです。
df_order_company .to_exce(export_file_path+'/'+i+'.xlsx')を実行すると
OSError Cannot save file into a non-existent directory C:\U sers\username\D esktop\excel pro\output と表示され エラーに なります どうすれば よいのか 御教授 お願いします
エラー文から推測して、該当箇所のコードを見直すことで改善ができます。
エラー文に慣れるとよいと思います!
また、わからないときはそのままコピペしてWeb検索をするのも方法です。解決のヒントがわかります。
1. export_file_pathが怪しいです。
「C:\U sers\username\D esktop\excel pro\output 」
・Uとsersの間にスペースがあります。
・usernameはご自身のパソコンのユーザー名を指定していますか?
2. 「export_file_path+'/'+i+'.xlsx'」こちらも「'.xlsx'」余計なスペースがありそうです。
Chromebookでできますか?
df_orderを実行すると、NameError: name 'df_order' is not defined と出てきてしまいます。
ファイルのパスを入力するところがよくわからず、
ここが原因ではないかと考えてキノコードさんと同じ名前でデスクトップにダウンロードしたファイル置きましたがうまくいきません。解決方法を教えてください
9:28「df_order = pd.read_excel(import_file_path, sheet_name=excel_sheet_name)」
のところが実行されていないのだと思います!
import_file_pathの指定がうまくいかない?ということでしたら、デスクトップにダウンロードしたファイルのパスをコピペすると間違いません。
@@kinocode
df_order = pd.read_excel(import_file_path, sheet_name=excel_sheet_name)」 のところを実行したときに FileNotFoundErrorと出てきていしまいます、、 ファイルパスは何回も確認したのですが、他に考えられる原因はあるのでしょうか?
ファイルのパスは
"C:\Users\81**9\Desktop|81**9\MyPandas\sample.xlsx"
となっていてキノコードさんの動画の中のものと結構違う気がします。
Windowsですね!
バックスラッシュはひとつだとエスケープシーケンスとみなされてしまうので、バックスラッシュを2つにしてください。
"C:\\Users\\81**9\\Desktop|81**9\\MyPandas\\sample.xlsx"
@@kinocode
キノコードさんが出してくださっている動画で、徹底解説 windowsでの環境構築 という動画を見ながら環境構築をして、この動画を進めています。
私はDockerを用いた環境構築をしたのですが、Dockerへのファイルの置き方や、パス指定のやり方が解説してある動画はありますでしょうか?
excelを開くときにpandasとopenpyxlがありましたが,どのように使い分けているのですか?
それ、めっちゃ気になりました!!!
多分同じことエクセルでやってると思うけどこっちの方がキレイにまとまりそうだしデータ容量増えなくて良さそう
ありがとうございます!ぜひ試してみてください!
キノコードさんの動画に出会って、プログラミングの勉強を始めることが出来ました☆これからもたくさん勉強させていただきたいと思いますので、よろしくお願いいたしますm(_ _)m
末長くよろしくお願いしますm(_ _)m
自動化最高だ
9:21あたりのdf_orderでNameErrorが出てpdが無いと言われてしまいます。どうしたらいいでしょうか。
pandasをインポートするとき、
import pandas as pdとしてないんじゃないでしょうか