タグ付けされた質問 「numpy」

NumPyは、Pythonプログラミング言語の科学および数値計算の拡張機能です。

11
numpy配列に関数をマッピングする最も効率的な方法
numpy配列に関数をマップする最も効率的な方法は何ですか?私の現在のプロジェクトでそれをやってきた方法は次のとおりです: import numpy as np x = np.array([1, 2, 3, 4, 5]) # Obtain array of square of each element in x squarer = lambda t: t ** 2 squares = np.array([squarer(xi) for xi in x]) しかし、これはおそらく非常に非効率的であるように思われます。リスト内包表記を使用して新しい配列をPythonリストとして作成し、それをnumpy配列に変換して戻すためです。 もっと上手くできる?

11
列によるNumPyの配列の並べ替え
NumPyの配列をn番目の列でソートするにはどうすればよいですか? 例えば、 a = array([[9, 2, 3], [4, 5, 6], [7, 0, 5]]) 行を2番目の列で並べ替えて、次のようにしたいと思います。 array([[7, 0, 5], [9, 2, 3], [4, 5, 6]])
336 python  arrays  sorting  numpy  scipy 


14
科学的表記なしで、与えられた精度でnumpy.arrayをきれいに出力する方法は?
numpy.arraysたとえば、次のような方法でフォーマットされたを印刷する方法があるかどうか知りたいです。 x = 1.23456 print '%.3f' % x numpy.array浮動小数点数を出力したい場合は、小数配列が出力されます。多くの場合、「科学的」形式で出力されます。これは、低次元配列であっても読みにくいです。ただし、numpy.array明らかに、文字列として、つまりで印刷する必要があります%s。これに対する解決策はありますか?

7
パンダのread_csv low_memoryおよびdtypeオプション
電話するとき df = pd.read_csv('somefile.csv') 私は得る: /Users/josh/anaconda/envs/py27/lib/python2.7/site-packages/pandas/io/parsers.py:1130:DtypeWarning:列(4、5、7、16)には型が混在しています。インポート時にdtypeオプションを指定するか、low_memory = Falseを設定します。 dtypeオプションがに関連しているのはなぜですかlow_memory、なぜFalseこの問題を解決するのですか?

6
numpy.array形状(R、1)と(R、)の違い
ではnumpy、一部の操作は正常に(R, 1)戻り(R,)ますが、一部は戻ります。これは明示的でreshapeある必要があるため、行列の乗算をより退屈なものにします。たとえば、行列が与えられた場合M、行数をnumpy.dot(M[:,0], numpy.ones((1, R)))どこにしたいのかR(もちろん、同じ問題が列ごとにも発生します)。当社は、取得しますmatrices are not alignedので、エラーをM[:,0]形状である(R,)が、numpy.ones((1, R))形状です(1, R)。 だから私の質問は: 形状(R, 1)との違いは何ですか(R,)。文字通り、数字のリストとリストのリストで、すべてのリストに数字だけが含まれていることがわかります。行列の乗算を簡単にするのではなく、numpy形状(R, 1)を優先するように設計しないのはなぜでしょうか(R,)。 上記の例にもっと良い方法はありますか?このように明示的に再形成しない場合:numpy.dot(M[:,0].reshape(R, 1), numpy.ones((1, R)))

5
パンダは他の列の値に基づいて新しい列を作成します/行ごとに複数の列の関数を適用します
私は、これらの6つの列(に(それがあれば、他のはしごを使用しています)私のカスタム関数を適用したいERI_Hispanic、ERI_AmerInd_AKNatv、ERI_Asian、ERI_Black_Afr.Amer、ERI_HI_PacIsl、ERI_White私のデータフレームの各行の)。 私は他の質問とは異なる方法を試しましたが、それでも私の問題に対する正しい答えを見つけることができないようです。これの重要な部分は、人がヒスパニックとして数えられるならば、彼らは他のものとして数えることができないということです。別の民族の列に「1」がある場合でも、2人以上ではなくヒスパニック系としてカウントされます。同様に、すべてのERI列の合計が1より大きい場合、それらは2つ以上の人種としてカウントされ、一意の民族として数えることはできません(ヒスパニックを除く)。うまくいけば、これは理にかなっています。どんな助けでも大歓迎です。 これは、各行でforループを実行するのとほとんど同じです。各レコードが基準を満たしている場合は、1つのリストに追加され、元のリストから削除されます。 以下のデータフレームから、SQLの次の仕様に基づいて新しい列を計算する必要があります。 =========================基準======================== ======= IF [ERI_Hispanic] = 1 THEN RETURN “Hispanic” ELSE IF SUM([ERI_AmerInd_AKNatv] + [ERI_Asian] + [ERI_Black_Afr.Amer] + [ERI_HI_PacIsl] + [ERI_White]) > 1 THEN RETURN “Two or More” ELSE IF [ERI_AmerInd_AKNatv] = 1 THEN RETURN “A/I AK Native” ELSE IF [ERI_Asian] = 1 THEN RETURN “Asian” ELSE …
316 python  pandas  numpy  apply 


13
NumPyで空の配列/行列を作成するにはどうすればよいですか?
通常はリストを使用する方法で配列または行列を使用する方法がわかりません。空の配列(または行列)を作成し、一度に1つの列(または行)を追加します。 現時点では、これを行うために見つけることができる唯一の方法は次のとおりです。 mat = None for col in columns: if mat is None: mat = col else: mat = hstack((mat, col)) それがリストであったとしても、私はこのようなことをします: list = [] for item in data: list.append(item) NumPy配列または行列にそのような表記を使用する方法はありますか?
311 python  arrays  numpy 


6
Python / NumPyでのmeshgridの目的は何ですか?
誰かmeshgridがNumpy の関数の目的は何かを私に説明できますか?プロットのためにある種の座標グリッドを作成することは知っていますが、その直接的な利点は本当にわかりません。 私はセバスチャン・ラシュカの「Python Machine Learning」を研究していて、彼はそれを決定境界のプロットに使用しています。ここの入力11を参照してください。 私も公式のドキュメントからこのコードを試しましたが、繰り返しになりますが、出力は実際には意味がありません。 x = np.arange(-5, 5, 1) y = np.arange(-5, 5, 1) xx, yy = np.meshgrid(x, y, sparse=True) z = np.sin(xx**2 + yy**2) / (xx**2 + yy**2) h = plt.contourf(x,y,z) できれば、実際の例もたくさん見せてください。




16
NumPy配列に列を追加する方法
NumPy配列があるとしましょうa: a = np.array([ [1, 2, 3], [2, 3, 4] ]) そして、配列を取得するためにゼロの列を追加したいと思いますb: b = np.array([ [1, 2, 3, 0], [2, 3, 4, 0] ]) NumPyでこれを簡単に行うにはどうすればよいですか?
292 python  numpy 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.