2023-05-01から1ヶ月間の記事一覧

Pythonでcsv形式からParquet形式データに変換

Parquet形式のデータは列ベースのデータフォーマットで、Apacheプロジェクトの一つです。商用サービスだとDatabricksが有名ですね。 Parquet形式の利点は行ベースのデータ形式(csvとか)と比べて、特定の列データだけを扱うクエリが非常に高速になることです…

ChatGPTに、飲酒後のアルコール分解にかかる時間を計算するPythonコードを書いてもらった

ChatGPTに、飲酒後のアルコール分解にかかる時間を計算するPythonコードを書いてもらいました。体重と飲んだお酒の種類、量を標準入力して、計算結果を表示するという単純なものです。 指示文(プロンプト): 飲酒後にアルコールが分解されるまでの時間を概算…

テキストファイルから、タグの名前だけを取り出すPythonコード

htmlやxmlなどのテキストファイルから、タグの名前だけを取り出すPythonコードです。例えば、<tagname>~</tagname>のtagnameだけを取り出したいときに使用します。 取り出したい情報は正規表現で探しているので、正規表現を変えれば、ほかの用途でも使えます。 コード: import …

ChatGPT_APIで任意のテキストを短くしたり長くするPythonコード

ChatGPTのAPIを利用して、任意のテキストを短くしたり長くするPythonコードです。 APIに投げるprompt部分をもう少し詳細に指定するようにすれば、どのくらいの短さ(長さ)にするかも制御できるかもしれません。 import openai def convert_to_short(prompt): …

ChatGPT_APIで任意のテキストを敬体・常体変換させるためのPythonコード

ChatGPTに敬体・常体を変換するPythonコードを書いてもらいました。 最初に提示されたのはシンプルな置換ルールを定義するもので、実用には堪えません。 敬体・常体変換・統一を高い精度で行う良いライブラリも見当たらず、現時点では自力で機械学習などで厳…

ChatGPTに、ライプニッツ級数で円周率を計算しnumbaの有無を比較するPythonと、比較用にcでのコードを書いてもらった

ChatGPTに、numbaの有り無しでの処理速度を比較するため、ライプニッツ級数で円周率を計算するPythonとcのコードを書いてもらいました。 指示文(プロンプト): ライプニッツ級数を用いて、円周率を計算するPythonコードを提示してください。和の上限を10^9と…

ChatGPTにNumpyを使うのと使わないので速度比較するPythonコードを書いてもらった

ChatGPTにNumpyを使う場合と使わない場合の計算速度を比較するPythonコードを書いてもらいました。 指示文(プロンプト): numpy を使った計算と、使わない場合の計算速度を比較するPythonコードを教えてください。 回答1: numpy を使った計算と、使わない場合…

ChatGPTにジュリア集合を描画するPythonコードを書いてもらった

ChatGPTにジュリア集合を描画するPythonコードを書いてもらいました。 指示文(プロンプト): ジュリア集合を描画するPythonプログラムを提示してください。できるだけ高速に描画するコードにしてください。 回答: Pythonプログラムを提示します。 このプログ…

ChatGPTにQRコードを生成するPythonコードを書いてもらった

ChatGPTに任意の文字列(URLとか)を埋め込んだQRコードを生成するPythonコードを書いてもらいました。 指示文(プロンプト): 指定した文字列からQRコード画像を生成するPythonのコードを書いてください。データと生成するQRコードの画像名は、標準入力から引数…

ChatGPTにマルチスレッドとマルチプロセスを比較するPythonコードを書いてもらった

2000, 2000の行列に対して、sinとcosの関数を1000回繰り返し適用するというCPUバウンドなタスクについて、マルチスレッドとマルチプロセスでどの程度の差が出るかを比較するPythonコードをChatGPTに書いてもらいました。 指示文(プロンプト): 2000, 2000の行…

ChatGPTにシングルプロセスとマルチプロセスの処理速度を比較するPythonコードを書いてもらった

Python3系では、multiprocessingモジュールを利用して、簡単にマルチプロセスプログラミングを行うことができます。そこで、ChatGPTにシングルプロセスとマルチプロセスの処理速度を比較するPythonコードを書いてもらいました。 指示文(プロンプト): マルチ…

ChatGPTに、Gmailから一斉メール配信するPythonコードを書いてもらった

ChatGPTに、Gmailから一斉メール配信するPythonコードを書いてもらいました。 日常的に一斉メールやメルマガを運用している場合は専用ソフトや商用サービスを契約・利用していると思いますが、突発的に一斉メールを配信したい場合、手作業で一通づつ送るとか…

ChatGPTにローカルストレージ速度を簡易計測するPythonコードを書いてもらった

ChatGPTにローカルストレージ速度を簡易計測するPythonコードを書いてもらいました。レンタルサーバとか仮想環境で、ストレージの読み/書きがどの程度のスピードかをざっくり把握するためです。 指示文(プロンプト): pythonでストレージ速度を計測するコード…

ChatGPTに、gmailのメールボックスから最新100件のタイトルを取得して表示するPythonコードを書いてもらった

業務利用しているGmailのメールボックスをプログラムから操作したい場合があると思います。そこで、サンプルとして、ChatGPTにGmailのメールボックスから最新100件のタイトルを取得して表示するPythonコードを書いてもらいました。 必要となるモジュール…

ChatGPTにデコレーターを利用した処理時間計測Pythonコードを書いてもらった

ChatGPTにデコレーターを利用した処理時間計測Pythonコードを書いてもらいました。 指示分(プロンプト): デコレーターを用いてpythonコードの実行時間を計測したいです。計測するコードへの変更は極力抑えたいので、デコレーターを外部化する形にしてくださ…

ChatGPTに最大公約数と最小公倍数を求めるPythonコードを書いてもらった

ChatGPTに最大公約数と最小公倍数を求めるPythonコードを書いてもらいました。 世界最古のアルゴリズムとして知られている「ユークリッドの互除法」を使う有名な問題です。 指示文(プロンプト): 任意の2つの自然数の最大公約数と最小公倍数を求めるpythonコ…

ChatGPTにPDFからテキストを取り出すPythonコードを書いてもらった

ChatGPTにPDFからテキストを取り出すPythonコードを書いてもらいました。 大量のPDFから特定の情報だけを抽出してデータベース化したいシーンを想定です。 指示文(プロンプト): PDFの中身を取得してテキストファイルに出力するPythonコードを提示してくださ…