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

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

新規登録して質問してみよう
ただいま回答率
85.35%
MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Python

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

Q&A

0回答

434閲覧

IndexError: list index out of rangeのエラー

kaeruuuun

総合スコア19

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Python

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

0グッド

0クリップ

投稿2021/06/01 01:32

文字列をmyBytesを5000から100000まで5000刻みで増やしていきます.
まずn=5000の時のxRとnRの関数の10回の平均処理時間をそれぞれ求めてその後myBytesを10000にしてと100000まで行います.そしてその結果を全て出力nが5000から100000まで出力したいです.

python

1import time 2import numpy as np 3 4NA ='ACGT' 5n = 100000 6s = '' 7myBytes = {} 8for n in range(5000,100000,5000): #000から100000まで5000刻みで動かす 9 myBytes[n] = (s.join([random.choice(DNA) for i in range(n)])).encode() 10 N=10 #10回平均処理時間 11 for j in range(N): 12 st1_time = time.time() 13 xR = sA(myBytes,256,0,False) 14 et1_time = time.time() 15 lap1_time= et1_time-st1_time 16 np.mean(lap1_time) 17 for j in range(N): 18 st2_time = time.time() 19 nR = A(myBytes) 20 et2_time = time.time() 21 lap2_time = et2_time-st2_time 22 np.mean(lap2_time) 23 24print("processing time:{} {} {}".format(np.mean(lap1_time),np.mean(lap2_time), xR==nR))

現状としてmyBytesを5000から100000まで5000刻みで持っている.
xRとnRで10回平均処理時間を求めることはできていますが,nを動かしながらxRとnRを動かすことがうまくいっておらず,
以下のようなエラーが表示されます.

python

1--------------------------------------------------------------------------- 2IndexError Traceback (most recent call last) 3<ipython-input-186-12a8686f963f> in <module> 4 11 for j in range(N): 5 12 st1_time = time.time() 6---> 13 xR = sA(myBytes,256,0,False) 7 14 et1_time = time.time() 8 15 lap1_time= et1_time-st1_time 9 10<ipython-input-53-0a3037ecc9d2> in sA(text, alphabetSize, nRec, dispF) 11 5 12 6 # slot suffixes into buckets 13----> 7 bSizes = bucketSizes(text, alphabetSize) 14 8 15 9 # determine the locations of LMSs 16 17<ipython-input-10-c0b3ee3b1238> in bucketSizes(string, alphabetSize) 18 5 res = [0] * alphabetSize 19 6 for char in string: 20----> 7 res[char] += 1 21 8 return res 22 23IndexError: list index out of range 24

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

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

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

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

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

m2l

2021/06/01 11:46

下記二つの処理はメソッドでしょうか? こちらがわかると確認がしやすいため、コードを載せていただけますと幸いでございます。 nR = A(myBytes) sA(myBytes,256,0,False)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問