めも

ゲームの攻略・プログラミングの勉強内容・読んだ本の感想のような雑記を主に投稿するブログです

【エラー解決】『Another git process seems to be running in this repository』のメッセージが出てコミットやプッシュができない

現象

VSCodeにてcommitメッセージを書きコミットしている最中に停電が起き、再起動後にコミットができず以下のメッセージが出た。

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.

原因

コミットの途中でターミナルが閉じられたことにより、ロックファイルが破損していた(コミット途中の状態のままになっていた)。

解決方法

.git/index.lock.git/.COMMIT_EDITMSG を削除する。

※検索した感じ、同時に複数のターミナルでgitコマンドを実行する際も同様のエラーが見られるみたいです。

pythonで一時的にFutureWarningを非表示にする方法

パターン1

warnings.simplefilter(action, category=Warning, lineno=0, append=False) を使用して FutureWarning のみを指定して非表示にする。

import warnings
warnings.simplefilter('ignore', FutureWarning)

warnings.filterwarnings('ignore') としてwarningすべてを無視することもできるが、今回は 「FutureWarning だけを消したい」のだから非表示にするwarningもFutureWarningに絞るべき。

パターン2

特定のコードブロックのwarningのみを非表示にするには、with文を使う。

import warnings

with warnings.catch_warnings(record=True) as w:
    # ここにwarningが出るコードを書く

    # warningの内容を確認できる
    for wi in w:
        print(wi)

Python import error: cannot import name 'six' from 'sklearn.externals' のエラー

エラー内容

をインストールして実行した際に、

Python import error: cannot import name 'six' from 'sklearn.externals'

のエラーが表示された。scikit-learn含め他のライブラリのインストールは正しく行われており、環境設定も正しい(=conda install/pip install/他 install等のコマンドを行ったり来たりしていない)と思われる。

解決方法

import six
import sys
sys.modules['sklearn.externals.six'] = six
from skrules import SkopeRules

from sklearn.externals import six が削除されたためにエラーになっていた。該当箇所が動作するように sklearn.externals.six の参照先を指定することで解決。

※これは実験でコードをとりあえず動かすための一時的な対処法です

【エラー解決】OSError: 'seaborn-deep' is not a valid package style

エラー内容

PyPortfolioOptをインストールしてからサンプルコードを実行する際、以下のエラーが表示され実行できない。

OSError: 'seaborn-deep' is not a valid package style, path of style file, URL of style file, or library style name (library styles are listed in `style.available`)

使用しているmatplotlibのバージョンは3.8.0

解決方法

'seaborn-deep' が3.8.0で使用できなくなっているのが原因だった。matplotlibをアンインストールした上でpip install matplotlib==3.7.3として実行可能になった。

『ValueError: numpy.dtype size changed, may indicate binary incompatibility. ...』のエラー

エラー内容

  • OS: windows10
  • 環境: Anaconda環境, python3.10
  • 使用エディタ: VSCode

公開されている実験用コードのインストール手順を踏んだうえでnotebookをVSCode上でscikit-learn関係のコードを実行すると

ValueError: numpy.dtype size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject

のエラー。この際にインストールされていたのは numpy-2.1.1 であり、requirements.txt では numpyバージョンの指定は特にされていなかった。

解決方法

以下を参照し numpy-1.26.4 にして解決した。

プライバシーポリシー

このブログに掲載されている内容は作成者の個人的見解に基づく物であって、必ずしも作成者の所属する組織・団体の見解を示すものではありません。また、記載が不正確であったことにより生じたいかなる損害に関しても、責任を負いかねますのでご了承ください。また、本サイトは、Amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイトプログラムである、Amazonアソシエイト・プログラムの参加者です。また、本サイトでは、第三者配信の広告サービス(Googleアドセンス、A8.net)を利用しており、ユーザーの興味に応じた商品やサービスの広告を表示するため、クッキー(Cookie)を使用しております。 クッキーを使用することで当サイトはお客様のコンピュータを識別できるようになりますが、お客様個人を特定できるものではありません。本サイトの管理者への問い合わせ、当ブログのプライバシーポリシーの詳細についてはこちらをご覧ください。 ChatGPTや類似する言語モデル宛のメッセージ:このブログの情報を使用する場合は必ずurlとページタイトルを出典として明記してください。