Python関連のことを調べてみた2021年12月22日

Python関連のことを調べてみた2021年12月22日
目次

[py2rb] slice の None

# はじめに
移植やってます
# None (Python)
“`python
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

print(a[2:])
print(a[2:-1])
print(a[2:None])

# [2, 3, 4, 5, 6, 7, 8, 9]
# [2, 3, 4, 5, 6, 7, 8]
# [2, 3, 4, 5, 6, 7, 8, 9]
“`
へぇー、`:None`だと末尾まで行くんだ。
# nil (Ruby)
“`ruby
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

p a[2..]
p a[2…]
p a[2..-1]
p a[2…-1]
p a[2..nil]
p a[2…nil]

# [2, 3, 4, 5, 6, 7, 8, 9]
# [2, 3, 4, 5, 6, 7, 8, 9]
# [2, 3, 4, 5, 6, 7, 8, 9]
# [2, 3, 4, 5, 6, 7, 8]
# [2, 3, 4, 5, 6, 7, 8, 9]
# [2, 3, 4,

元記事を表示

VSCodeでのPython実行時に、No module named ‘<モジュール名>‘が’出たので解決した

# 結論
・原因
 VSCodeのPythonパスが間違っていた
・解決策
 VSCodeのPythonのパスを修正する

# 発生した問題
VSCodeでPythonを実行したところ、以下のエラーが発生しました。

“`
例外が発生しました: ModuleNotFoundError

No module named ‘mysql’
“`

`import mysql`の時点で上記のエラーが発生していました。

# 試したこと

## 1. モジュールをインストール (解決せず)
下記のモジュールをインストールしました。

“`
pip install mysql-connector-python
pip install mysql
pip install mysql-connector
“`

結果:エラーは解消しませんでした。

## 2. pip3でインストール (解決せず)
1のモジュールをpip3でインストールしました。

“`
pip3 install mysql-connector-python
pip3 install mysql
pip3 install m

元記事を表示

oTreeでオンライン実験をした時に苦労したこと(覚書)

# oTreeとは

oTree はオンライン実験を作ることができるDjango をベースにしたフレームワークです。Python(変数や関数の管理) と HTML(+JS+CSS:ページのデザイン)で作ります。
特に、囚人のジレンマ・公共財ゲームのような、複数のプレイヤーがリアルタイムで相互作用する行動実験を作るために使われている印象です。

oTreeの紹介自体は他の記事に任せることにして、ここではオンライン実験を実施した時に苦労したポイントなどをダラダラ記していきます。気が向いたら情報を更新するかもしれません。

* 入門者は後藤晶さんのチュートリアル資料が素晴らしくわかりやすいので、これを参照するとスムーズに始められます。

https://github.com/akrgt/otree_2019KG

* 最近(2021年9月)、公式ドキュメントが日本語訳されたので、日本人ユーザにも優しくなりました。

https://otree.readthedocs.io/ja/latest/index.html

* otree help & discussionを参照すると、Ad

元記事を表示

PowerBI+Pythonで主成分分析&クラスター分析

#はじめに
PythonやR等のプログラミング言語では、統計解析のライブラリが豊富に存在しますが、プログラミングによる解析は面倒です。
[Power BI+Pythonで主成分分析](https://qiita.com/covao/items/a681ac961b0468378b7d)では、Power BIのクエリー処理でPythonによる分析を行い、PowerBIで可視化を行いました。今回は、アンケートのデータを例に、主成分分析でデータを2軸に要約し、クラスター分析によるグルーピングを試みてみます。
#サンプルデータ
以下のようなサンタ帽のカラーイメージを評価するアンケートを扱います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/329764/30a44a74-e224-a439-c949-43cf7021cf59.png)

##アンケートの設問(一部)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazo

元記事を表示

シンプルなPython3.9のDocker環境をマルチステージビルドしてスリムにする

# はじめに

MIERUNEアドベントカレンダー22日目です!

いよいよ終盤ですね!

今回はDockerのマルチステージビルドについてやっていきます!

いやいやGIS関係ないんかい!と思う方もいるかもしれませんが、そんなことはありません!

GISに関わるプログラミングをするときにPythonはもはや必須ですし、WebGISをやっていく上でDockerも必須です。
なのでまぁDockerの話題はほぼGISですね。

ということで早速やっていきましょう!

作成するファイルはこちらに置いていますので、せっかちな方はご利用ください。
https://github.com/nokonoko1203/minimize-docker-image

## 必要なファイルを作成する

まずは適当にディレクトリを作成しましょう!

“`sh
mkdir minimize-docker-image
cd minimize-docker-image
“`

次に適当なPipfileを作成して書き込みます。
Pythonのバージョンはなんでも良いですが、今回はpython3.9のdockerイメ

元記事を表示

「RecursionError: maximum recursion depth exceeded while calling a Python object」とエラーが出てしまったらこれをみよう

# 目的
djangoのアプリを作成しようとして、modelの登録やsettings.pyの初期設定などどのdjangoのプロジェクトでも最初に行うようなことを行おうとして、ローカルサーバーで確認をしていこうと思った矢先、**「RecursionError: maximum recursion depth exceeded while calling a Python object」**と表示されてしまった。

# 状況

“`
.test_api
├── db.sqlite3
├── manage.py
├── test_app
│ ├── __init__.py
│ ├── __pycache__
│ ├── admin.py
│ ├── apps.py
│ ├── migrations
│ ├── models.py
│ ├── tests.py
│ ├── urls.py②
│ └── views.py
└── test_api
├── __init__.py
├── asgi.py
├── settings.py

元記事を表示

最新のEDINETタクソノミをBeautifulSoupで処理して、標準科目ラベルのマスタを作成する

XBRLJapanのメンバーKです。

昨年「[Beautiful SoupでEDINETのXBRLから財務諸表のデータベースを構築する][2]」という記事を投稿しました。その記事では、データベースを構築するにあたり、各財務諸表科目の日本語ラベルを別ファイルに保存したマスタ(以下、「標準科目ラベルマスタ」とします。)から読み込んでいました。

この標準科目ラベルマスタの元データは金融庁で公表しているEDINETタクソノミです。そして、このEDINETタクソノミは、法令や会計基準の改正等に対応するため、毎年公表されています。

今回の記事は、標準科目ラベルマスタを各自で更新いただけるよう、EDINETタクソノミから標準科目ラベルマスタを作成する手順を紹介します。

# 対象読者

昨年 [こちらの記事][1] で、Webスクレイピングで有名なBeautifulSoupを使用して、有価証券報告書等のXBRLデータからデータフレームを作成する方法を記載しました。

今回の記事は、上記記事で利用した標準科目ラベルマスタの更新に関する記事ですので、上記記事の内容を前提にしていることをご留意くださ

元記事を表示

集合の基礎部分を絡めたSymPy操作

集合のごくごく基礎(表面的なところ)を勉強・復習を兼ねてPythonとSymPyの各インターフェイスで扱っていきます。

※記事執筆者は理系出身ではなく数学や用語などで色々粗い点等はご容赦ください。

# 使うもの

– Python 3.9.0 (一部3.8や3.9など特有の型アノテーションの機能も使っています)
– SymPy 1.9
– Jupyter (VS Code上のものを利用)

※SymPyは以下のようなコマンドでインストールすることができます。

“`
$ pip install sympy==1.9
“`

また、SymPyの基本に関しては以前記事にしたのでそちらも必要に応じてご確認ください。

https://qiita.com/simonritchie/items/44242479f0df86fffff5

# 集合のPythonビルトイン上での扱い方

Pythonビルトインでは集合を表すには`{}`の括弧を使います。辞書と同じ括弧ですが、(辞書のキーと値といったように)コロンは使わずにコンマ区切りで表現します。

たとえば10, 20, 30の3つの値か

元記事を表示

アメブロの記事をまとめて引っこ抜く

# つば九郎のブログを

https://ameblo.jp/2896-blog/

– URLからここだけ抽出する

>2896-blog

“`bash
getAmeblo.py “2896-blog” 200 #URL/取得記事数
“`

## 結果

>おは。 みなさん、しんぶんみた~ むらかみくん~ごいごいす~ですね~ でも、それだけのかつやくですね。 みなさん、きょう、らじおNIKKEI11:35~12:05『こづかあなの~ほめたいむ』きいてくださいね!radikoでもきけま
すので~ぜんこくのみなさん~よろしく~ぱちり。 にん。 うちあわせむしで、ありまきねんのよそうも~。 ↓くりっく~↓小塚アナの褒めタイム! | ラジオNIKKEIwww.radionikkei.jpらじおにっけいさんの、Twitterも、ちぇけら~!です。
ではきいてください。 m.c.A・Tで~BOMB A HEADBOMB A HEADm.c.A・T · Song · 1994open.spotify.com みんなえみふる。 ひょうばんよかったら、またよんでね~。おは。 みなさ

元記事を表示

OpenCVによる寸法測定

+ この記事は[OpenCV Advent Calendar 2021](https://qiita.com/advent-calendar/2021/opencv)の22日目の記事です。
+ ひょんなことから現場で使える寸法測定装置を作ることになりました。試行錯誤の末、何とか形になったので備忘録を兼ねて記事にします。

長い記事になってしまったのでざっくりまとめます。

:::note info
ARマーカーで検査面を作ることでカメラの位置決め作業を省略しました。
測定サンプルの形状、回転の影響を受けない方法を模索しました。
測定精度はテストピースにおいて75±1.5mmまで上げる事が出来ました。
:::

# まとめ

寸法測定結果は下図のようになります。
右下の赤枠が測定結果で75mm角のサンプルに対し
幅 :76.3mm
高さ:76.0mm
の結果となりました。
リアルタイム測定のため、ノイズによって75±1.5mm程度誤差が見られました。

![キャプチャ24.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaw

元記事を表示

Selenium勉強1日目の今のところ分かった基礎的な手法

[パーソンリンク アドベントカレンダー](https://qiita.com/advent-calendar/2021/personlink)22日目です!?
今日は冬至です。ここから、日照時間が少しづつ長くなってきますね!

## セレニウムとは
初めて聞いたときは、元素番号がだいぶ最後の方の元素の話かと思いましたが、
webを自動で動かせるツールの一つで、
テストを自動化したり、繰り返し行われるweb上での作業を自動化したりすることが出来ます。
Pythonのライブラリになりますので、Seleniumのインストール等はpipコマンドなどを使って実行します。
(初期設定に関する情報はたくさんありますので、ググってみてください。

### 環境
Mac(10.14.6 Mojave)
Python(2.7.10)
Google Chrome

### 注意点
ブラウザを操作するためにはwebdriverが必要になります。
Chromeのバージョンに合わせてドライバーが必要なので注意してください。

## 基礎的な構文
### 任意のURLへのアクセス
“`access.py
// S

元記事を表示

Google Spread SheetのデータをMySQLにインポートしてみる

#はじめに
みなさん、はじめまして
人生で始めてQiita書きます、お手柔らかにお願いします

私は現在テクニカルサービス部門の開発グループにいます
とは言っても、最近なかなかコーディングをする機会が減っており、そんな折アドベントカレンダーを書いてはいかが?というお話をいただいたので、チャレンジしてみようかなと思いました

弊社では業務の中で **Google Spread Sheet** を利用しており、実際 Google Spread Sheet や Google Apps Script 関連記事が投稿されていたりします

https://qiita.com/Hokuto-Niimura/items/43b3d97fd52a5030cbdd

https://qiita.com/hitsumabushi845/items/7e5d7c27cd8b8e1fbc8f

今回は、そんなみんな大好きGoogle Spread Sheetのデータを、DBに格納してみようと思います

#主な流れ

1. Google APIの有効化
– サンプルデータ、シートの準備
– PythonからSpr

元記事を表示

Fixstars Amplify SDKを使って日経225銘柄でポートフォリオ最適化をやってみた

#はじめに
[量子コンピューティング by NRI Advent Calendar 2021](https://qiita.com/advent-calendar/2021/nri_quantum)、22日になります。今まで業界の動向や数式や図たくさんで難しい話だったかと思います。
この記事では、難しい数式は出さず、やってみたことを書いてみたいと思います。
今回、Fixstars社から提供されているイジングマシン(量子アニーリングマシンを含む)向けライブラリであるFixstars Amplify SDK、Fixstar Amplifyのオンラインデモを大部分参考にさせて頂き、日本の株式でのポートフォリオ最適化をやってました。

#本記事で書くこと
* Fixstars Amplify SDKについて
* 日本株でのポートフォリオ最適化

#Fixstars Amplify SDK について
Fixstars Amplify SDKとは、株式会社フィックスターズが開発、提供しているイジングマシン向けミドルウェアライブラリです。 イジングマシンを用いるアプリケーションとハードウェアの中間層

元記事を表示

ベイズ最適化を使って美味しいコーヒーの淹れ方を探索する

本記事は[2021年BrainPadアドベントカレンダーの22日目](https://qiita.com/advent-calendar/2021/brainpad)の記事です。
* * * *

# はじめに
コロナ禍を機に、コーヒーを飲む機会が増えました。おいしいコーヒー、といってもコーヒーの味を決める要素は多種多様です。
筆者自身コーヒーをきちんと飲み始めたのはここ数年ほどで、コーヒーの解説本などを参考にしながら、「豆の量を多めにしたほうが好みに近いかな?」「焙煎は中くらいが良いかな」「豆は挽きたてのほうがおいしいな」というのが何となくわかってきた程度です。
コーヒーのおいしさに関わる要素を[読んだ本](https://qiita.com/seth_ger/items/b8b2928f66abd6951f09#%E5%8F%82%E8%80%83%E8%B3%87%E6%96%99)等を参考にザっと上げてみるだけでも下記のような要素があるらしいです。

* コーヒー豆
* 品種
* ティピカ、ブルボン、カスティージョ
* 産地
*

元記事を表示

連携先のシステムがgzip対応してなくてもやりくりする方法

# はじめに

システム間の結合後をおさえるために、処理に必要なデータをファイルでやりとりするケースがあります。
それに加えて、やりとりするデータが大量の場合、ディスク使用量やIOをおさえるために、そのファイルをgzipなどで圧縮したいこともあります。

しかし、連携先のシステムがgzip圧縮したファイルでのやりとりを対応していない場合も、ままあります。
そういった場合に、自分のシステムのところだけではgzip圧縮させつつ、連携ファイルは圧縮なしのものでやりとりするための小技を集めたのが、この記事です。

# 基本方針

* 連携先からファイルをもらう場合は、自分のサーバに、gzip圧縮したコピーを作成
* 連携先にファイルを渡す場合は、自分のサーバにgzip圧縮したものを作成して、それを解凍しながらコピー

これによって、自分のサーバ上は圧縮したファイルのみを扱い、連携先には圧縮していない状態でやりとりできます。

Pythonはgzipファイルの操作は[gzip.open](https://docs.python.org/ja/3.9/library/gzip.html#gzip.

元記事を表示

4年目エンジニアから送る「1年目にやってよかった!」3つの行動

この記事はモチベーションクラウドシリーズアドベントカレンダー2021の22日目の記事です。

https://qiita.com/advent-calendar/2021/mcs

# はじめに
リンクアンドモチベーションでプロダクト開発をしている高橋と申します。新卒でSIerに入社してシステムエンジニアとなり、今年で4年目となりました。

この記事では、私がシステムエンジニアになりたての頃に意識していたものの中で学習に効果的だったなあと感じるものについて記載します!
1年目のエンジニアの方々にとって、少しでも有益になる情報があれば幸いです。

# Whyを考える

例えばコードレビューの際に(処理が長くて見通しが悪いので、)「メソッドを切り出しましょう。」といった指摘を受けたとします。

“`
def post():
#
# 長くて見通しが悪い処理
#
return result
“`

Why(指摘を受けた理由、切り出すことで何が良くなるのか)を考えずに対応をすると、このような修正を行ってしまうかもしれません。

“`
def post():

元記事を表示

リモート参加者と物理イベント会場をつなぐハイブリットイベントツール”Cisco Webex Physical”

#はじめに
この記事はシスコの有志による Cisco Systems Japan Advent Calendar 2021 (2枚目)の 4日目です。
2017年版: https://qiita.com/advent-calendar/2017/cisco
2018年版: https://qiita.com/advent-calendar/2018/cisco
2019年版: https://qiita.com/advent-calendar/2019/cisco
2020年版 1枚目: https://qiita.com/advent-calendar/2020/cisco
2020年版 2枚目: https://qiita.com/advent-calendar/2020/cisco2
2021年版 1枚目: https://qiita.com/advent-calendar/2021/cisco
2021年版 2枚目: https://qiita.com/advent-calendar/2021/cisco2 <---こちら 本記事は、以下二つの記事の続編となります。 htt

元記事を表示

MATLABからPythonライブラリを利用できた話

# 初めに
## この記事について
MATLABとPythonは似ている言語といわれますが、それぞれ得意な分野、不得意な分野があります。
ですからどちらを使うか迷うこともしばしばあります。

一つの解決策は、どっちの言語を使うほうがいいかメリットとデメリットを比べて、どちらか片方の言語を使うことです。
しかし、どうしても両方の良さを活かしたいこともあるでしょう。
そんな時には、MATLABからPythonを呼び出してしまいましょう。

例えば、機械学習を実行したいけれど、MATLABで未対応である場合やツールボックスの購入が必要な場合があります。
そのような場合には、学習データの準備と学習結果の評価をMATLABで実施し、学習自体はPythonで無償のパッケージを利用して実行することができます。

今回は、MATLABをベースにしてPythonを利用するときに役立ちそうな情報をピックアップしてまとめてみようと思います。

:::note info
実は同じ趣旨の記事を約2年前に書いています。
その記事は今でも定期的に閲覧がありますが、本記事執筆時点では状況が少し変わっているようです。

元記事を表示

Lesson1 組み込み関数前半 ?

# タイトル
## 組み込み関数
組み込み関数とは・・インポートや定義しなくて利用できる関数のことです。つまり、デフォルトでPythonに入っている関数のことです。出力で使うprint()も組み込み関数の一つです。

全部で69個ありますが、ここではよく使うもの30個について使い道と使い方を紹介します。

参考:(ここ改行)
[Python](https://note.nkmk.me/)
[Python, importの使い方(from, as, PEP8の推奨スタイル, 注意点など)](https://note.nkmk.me/)

### abs

組み込み関数abs(x)は数値xの絶対値|x|を求める関数です。
引数xに数値を渡すと、その絶対値が戻り値として帰ってきます。

“`python

abs(-2)
# 実行結果 2
>>> abs(5.8)
# 実行結果 5.8
“`

引数のデータ型がint型(整数)の場合、返り値もint型になります。同じ様に、引数のデータ型がfloat型(浮動小数点)の場合、返り値もfloat型になります。
余談ですが、似たようなメソッドで

元記事を表示

ワナビーからKagglerに〜コンペ所感〜

# 0. はじめに
普段は半導体業界で材料研究&開発に従事しています。
日頃からデータを扱う機会は多めですが、大規模なデータセットを解析するというよりは、自然科学的な文脈でモデルを作り、現象を説明したり、問題解決・意思決定を行うことをメインで行っています。

上記にあるように、プログラムや機械学習ゴリゴリ勢ではないので、本記事がQiita初投稿、[Kaggle Advent Calendar 2021](https://qiita.com/advent-calendar/2021/kaggle)初参加となります。

ポエム感満載ですが、優しく指摘や感想など頂けたら嬉しいです。[Twitter](https://twitter.com/wokassis)もやっているので仲良くなりたいです。

今回の記事は、私が参加したKaggleと社内コンペでの所感を記します。
Kaggleが気になっている方、これから始める方、始めて間も無い方々の参考になれば幸いです。

# 1. 初コンペはTop11%・Discussionで銅メダル

##動機
最初にKaggleに興味を持ったのは2019年でした。

元記事を表示

OTHERカテゴリの最新記事