a = [1,2,3,4,5]
をa_string = "1 2 3 4 5"
に変換します。実数配列はかなり大きい(50000x200)ので、私はfor loops
を使うのが遅すぎると仮定します。かっこなしのナンシーアレイを印刷するには?
21
A
答えて
32
3
numpyのは、このarray_strとarray_reprのための2つの機能を提供します - いずれかが、あなたのニーズに合わせなければなりません。など、あなた自身を記述するかもしれない機能よりも優先されなければならない、
>>> from numpy import arange, reshape, array_str
>>> M = arange(10).reshape(2,5)
>>> M
array([[0, 1, 2, 3, 4],
[5, 6, 7, 8, 9]])
>>> array_str(M)
'[[0 1 2 3 4]\n [5 6 7 8 9]]'
>>> array_repr(M)
'array([[0, 1, 2, 3, 4],\n [5, 6, 7, 8, 9]])'
これら2つの関数は、両方の高度に最適化されていると:あなたがいずれかを使用できますので、ここではそれぞれの例です。このサイズの配列を扱うとき、私はあなたが得ることができるすべてのスピードを望むと思います。
3
あなたはリスト(あなたがあなたの投稿で、「本当のnumpyの配列」を言及するので)あなたは、配列の文字列表現にre.sub
を使用することができますのではなく、そもそもnumpyの配列がある場合:
print(re.sub('[\[\]]', '', np.array_str(a)))
を この場合も、これはあなたの配列a
がある点では数が少ない配列であると仮定しています。これには、行列を扱うという利点もあります。
4
import numpy as np import sys a = np.array([[0.0, 1.0, 2.0, 3.0]]) np.savetxt(sys.stdout, a)
np.savetxt出力:
0.000000000000000000e+00 1.000000000000000000e+00 2.000000000000000000e+00 3.000000000000000000e+00
または配列が反転している場合:
a = np.array([0.0, 1.0, 2.0, 3.0])
np.savetxt(sys.stdout, a, newline=" ")
それとも、本当に文字列が必要な場合:
を012あなたが得ることがfmt
精度を制御することができ
:
np.savetxt(sys.stdout, a, fmt="%.3f")
出力:
0.000 1.000 2.000 3.000
か:
np.savetxt(sys.stdout, a, fmt="%i")
出力:
0 1 2 3
Python 2.7.12、numpy 1.11.1でテスト済みです。
関連する問題
- 1. 角かっこなしでリストを印刷できますか?
- 2. 角かっこでJSONを印刷するには?
- 3. 印刷がかっこなしで動作しない(Python 2.7)
- 4. charAtは、印刷されるデータ型によって印刷が異なるのはなぜですか?
- 5. このデータフレームを印刷するには
- 6. 印刷ダイアログを表示しないでWebブラウザから印刷するには?
- 7. 印刷スタイルシートは完全に私はここに、印刷ボタンでWebページを持っている
- 8. これはなぜ印刷しないのですか? Pythonの
- 9. 印刷が印刷されないのはなぜですか?
- 10. なぜこのプログラムは-58684322800B5FD80を印刷しますか?
- 11. なぜこのコードセグメントはSystem.out.print( 'a' + ''); 129を印刷しますか?
- 12. なぜこのコードは "olleH"を印刷しますか?
- 13. このコードは何を印刷し、なぜですか?
- 14. なぜprint(())とinput(())でかっこを印刷するのですか?
- 15. ブラウザから直接印刷する印刷ポップアップウィンドウなしで
- 16. My Codeでテキストファイルのデータを一度読み取って印刷するにはJSPで印刷しますか?
- 17. 何かを印刷してそのリストを印刷するには?
- 18. jQuery印刷機能を使ってCSSコンテンツを印刷する
- 19. これはなぜ-0.0を印刷しますか?
- 20. XPSファイルに印刷してからプリンタに印刷する
- 21. は、なぜ、このモジュールの印刷
- 22. 9行目の出力の前にこの印刷行が印刷されるのはなぜですか?
- 23. serde_cborを使って有効なCBORを印刷するには?
- 24. 印刷生データはここ
- 25. このコードは何をスクリーンに印刷しますか?
- 26. Java印刷。奇妙なwymbolsどこの印刷PDF
- 27. System.out.printが何も印刷しないうちにSystem.out.printlnが改行を印刷するのはなぜですか?
- 28. 印刷「なし」
- 29. 印刷前にProperties.listのコピーテーブルがなぜですか?ここ
- 30. 印刷私はこの機能を持っている
:これを確認してくださいhttp://stackoverflow.com/questions/5365520/numpy-convertting-array-from-float-to-strings – George
本当に大きな配列の文字列表現が必要ですか?何のために? –
その後、私はこれと他の3つの配列をファイルに書く必要があります。すべての配列は大きさが異なりますので、それらをファイルに交互に書き込む必要があります。そのため、 'writeline'を使って手動で行うことを計画しています。 – Framester