質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

580閲覧

IndexError: index 0 is out of bounds for axis 0 with size 0

fdd

総合スコア28

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2018/12/04 13:57

前提・実現したいこと

保存したファイルをnumpy形式で読みだしたいのですが、indexerrorが表示されてしまいます。 プログラムは下記のソースコードでnumpy形式のファイルを作成しています
https://github.com/kujirahand/book-mlearn-gyomu/blob/master/src/ch6/photo_calorie/read_image.py

発生している問題・エラーメッセージ

File "<ipython-input-15-efaf5bea8b9b>", line 1, in <module>
runfile('/Users/name/read_image2.py')

File "/Users/name/anaconda3/envs/python35/lib/python3.6/site-packages/spyder_kernels/customize/spydercustomize.py", line 668, in runfile
execfile(filename, namespace)

File "/Users/name/anaconda3/envs/python35/lib/python3.6/site-packages/spyder_kernels/customize/spydercustomize.py", line 108, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)

File "/Users/name/read_image2.py", line 21, in <module>
plt.title(y[i + idx])

IndexError: index 0 is out of bounds for axis 0 with size 0



該当のソースコード

import matplotlib.pyplot as plt

photos =np.load('image/photos.npz')
x = photos['x']
y = photos['y']

idx = 0

plt.figure(figsize=(10, 10))
for i in range(25):
plt.subplot(5, 5, i+1)
plt.title(y[i + idx])
plt.imshow(x[i + idx])
plt.show()

試したこと

ここに問題に対して試したことを記載してください。
range()の数値を増やしてみましたが上手くいきませんでした。

補足情報(FW/ツールのバージョンなど)

python3.6.6
mac OS Mojava

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

画像ファイルがない環境でread_image.pyを実行するとphotos.npzの中身は空になります。
その場合、提示エラーが発生します。
画像ファイルを適切に配置した環境でread_image.pyを実行しphotos.npzを作成しなおしてください。

投稿2018/12/04 16:21

can110

総合スコア38266

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fdd

2018/12/05 02:57

read_image.pyは実行していてphotos.npzは作成しています。
can110

2018/12/05 02:59

「画像ファイルがない環境で」実行していませんか? 画像ファイルがなくてもphotos.npzは作成されます。 ちなみにphotos.npzのファイルサイズはいくつですか?
fdd

2018/12/05 03:08

サイズは450バイトです。
can110

2018/12/05 03:10

そのサイズであれば画像は含まれていません。
fdd

2018/12/06 02:37

すみません。画像を増やす前までは該当のソースコードで画像を呼び出すことができていました。何が原因なのでしょうか?
can110

2018/12/06 02:42

「画像を増やす」作業内容が不明なので何とも言えません。 なんらか手順を誤った可能性はないでしょうか?
fdd

2018/12/06 02:58

初めはflickr apiのみで画像を集めていましたが、microsoft azureも用いて画像集めを行いました。 拡張子はjpgだけでなくjpegも含まれていたため、readimage.pyのpath以下の画像を読む込む箇所で、 files = glob.glob(path + "/*.jpg/","/*.jpeg/")に変更して行いました。
can110

2018/12/06 03:04

要するにその修正により画像の列挙がうまくいかなくなったと思われます。
fdd

2018/12/06 04:26

どのようにソースコードを書けば、jpgファイルとjpegファイルの両方を読み込みできるのでしょうか?
can110

2018/12/06 04:30

globの使い方をよく覚えていないので教えてください。 ①"/*.jpg/"のように最後に「/」をつけているのはどんな意味になりますか? ②glob関数の第二引数に"/*.jpeg/"を与えていますが、第二引数はどんな意味になりますか?
fdd

2018/12/06 05:06

詳しい使い方は私もよく分かりませんでしたが、files = glob.glob(path + "/*.jpg/,/*.jpeg/")に書き換えたところreadimage.pyは実行されましたが、numpy形式では呼ぶ出すことができません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問