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

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

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

PyTorchは、オープンソースのPython向けの機械学習ライブラリ。Facebookの人工知能研究グループが開発を主導しています。強力なGPUサポートを備えたテンソル計算、テープベースの自動微分による柔軟なニューラルネットワークの記述が可能です。

NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

Python

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

Q&A

0回答

314閲覧

python listのxからy番目をまとめて取る方法はありませんか?

Flan.

総合スコア123

PyTorch

PyTorchは、オープンソースのPython向けの機械学習ライブラリ。Facebookの人工知能研究グループが開発を主導しています。強力なGPUサポートを備えたテンソル計算、テープベースの自動微分による柔軟なニューラルネットワークの記述が可能です。

NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

Python

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

0グッド

0クリップ

投稿2020/09/29 15:21

listのサイズは10000,6,4,200です

100から150番目のものをとって50,200のlistにしたいです

200の部分はpytorchのtensor型で格納してます
tensork他をnumpyに入れるのは無理でした
試したこと

s.append(memory.buffer[brin_in_idx-self.R2D2roop:brin_in_idx,0,2]) エラーsequence index must be integer, not 'slice' a.append(memory.buffer[brin_in_idx-self.R2D2roop:brin_in_idx][0][2]) エラーsequence index must be integer, not 'tuple'

:

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

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

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

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

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

shiracamus

2020/09/29 17:57

list なら data[x:y+1] で取れますけど?
toast-uz

2020/09/29 22:12

> listのサイズは10000,6,4,200です この4つの数値はどういう意味でしょうか?
Flan.

2020/09/30 08:23

[10000,6,4,200]のサイズのlistという意味です
Flan.

2020/09/30 08:25

なぜsequence index must be integer, not 'slice'と出るんですか?
shiracamus

2020/09/30 09:09

Pythonのlistはこういうデータです。 >>> data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> type(data) <class 'list'> >>> data[3:8] [4, 5, 6, 7, 8]
Flan.

2020/09/30 09:22 編集

とりたいdetaのサイズは10000,6,4,200   なのでmemory.buffer[40-6:40][0][2]でとろうとしたら出力は[1,200]になるはずですが エラーが出ます
shiracamus

2020/09/30 09:31 編集

list ではなく numpy の array ですか? 4次元array ?
Flan.

2020/09/30 09:33

タグに numpy や pytorch は既にあります(このサイトの質問につけるやつのことだよね?)
Flan.

2020/09/30 09:36

10000,6,4,200のlist(200の部分はpytorchのtensor型で格納してます) ただし[:][1], [:][2], [:][3]はサイズが違うのでnumpyとかにはできません
Flan.

2020/09/30 09:38

10000,6,4,200は正確には違いますがなんて表記したらいいかわからなかった+あまり関係ないと思ったので10000,6,4,200と書きました
shiracamus

2020/09/30 09:43 編集

小さなデータを作って試してみてはいかがでしょう? >>> import numpy >>> data = numpy.array(range(100*6*4*20)) >>> data = data.reshape(100,6,4,20) >>> data.shape (100, 6, 4, 20) >>> type(data) <class 'numpy.ndarray'> >>> data[3:6][0][2] array([[1600, 1601, 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1616, 1617, 1618, 1619], [1620, 1621, 1622, 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1639], [1640, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655, 1656, 1657, 1658, 1659], [1660, 1661, 1662, 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, 1678, 1679]])
shiracamus

2020/09/30 09:45

tensor型は他のアクセス方法を使う必要があるようですね。
toast-uz

2020/09/30 10:53

> 100から150番目のものをとって50,200のlistにしたいです とって、とは、削除して、ですか?抽出して、ですか?どちらかによって反対の意味になります。4次元リストのどの次元を「とる」のですか?また、何故、4次元リストから「とる」と、2次元になるのですか?
Flan.

2020/10/03 19:42

4次元リストから「とる」と、2次元になるのですか?> 100から150番目のものをとって から 50,200のlistにしたいです 削除して、ですか?抽出して、ですか?> 100から150番目のものをとって から 50,200のlistにしたいです
toast-uz

2020/10/03 22:06

> 100から150番目のものをとって から 50,200のlistにしたいです という言葉が、日本語として理解できないです
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問