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

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

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

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

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

解決済

2回答

515閲覧

pythonでリストを一つにまとめたい

kotamu

総合スコア7

Python

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

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2020/11/08 05:18

編集2020/11/08 05:50

初歩的な質問ですが、pythonで機械学習をしていて、クラス分類結果のバイナリリストを作成したいのですが、リストがバッチ数32個ごとに格納されているためうまくいきません。

これを↓

[array([1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1]), array([1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0]), array([1, 0, 1])]

こうしたい↓

[1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1]

どなたか方法を教えていただけると幸いです。

追記
pytorchで取得したラベルの予測結果をバイナリリストに格納したいです。

_, preds = torch.max(outputs, 1) # ラベルを予測 preds_all.append(preds.cpu().numpy())

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

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

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

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

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

can110

2020/11/08 05:43

そのような結果になるソースコードを提示ください。
guest

回答2

0

ベストアンサー

元のpreds_allがどんな変数が不明ですが、以下のようなコードであればほしい結果が得られるかと思います。

Python

1import numpy as np 2 3preds_all = np.array([],dtype=int) 4for a in [np.array([0,1]), np.array([1,0])]: 5 preds_all = np.append(preds_all, a) 6 7print(preds_all) # [0 1 1 0]

投稿2020/11/08 06:00

can110

総合スコア38278

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

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

kotamu

2020/11/08 06:15

for文のinの中にくっつけたい配列を書き連ねるという解釈でよいのでしょうか?実際は32×300くらいの配列数を扱うことになるので、手動で書くとなると少し厳しいです。。
can110

2020/11/08 06:17

くっつけたい配列がどのようなものかは分かりませんが、一般的には 「for a in くっつけたい配列:」でよいかと思います。
kotamu

2020/11/08 06:24

すみません。質問の内容が不十分でした。preds_allというリストに上記のarray[]が三つ格納されていて、3×32の形になっています。これを1×32の形にしたいというのが今回の目的になります。
kotamu

2020/11/08 06:32

解決しました。お手数おかけしました。
guest

0

appendを使えばいいと思います

投稿2020/11/08 05:20

pokemonta

総合スコア170

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

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

kotamu

2020/11/08 05:39

list = [] for i in range(3): for j in range(32): list.append(array_all[i][j]) print(list) とすると三つ目の配列がうまく入らずエラーとなります。 具体的に教えていただけると助かります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問