NumPy numpy.loadtxt() 関数
Suraj Joshi
2023年1月30日
-
numpy.loadtxt()
の構文 -
コード例:NumPy
txt
ファイルからnumpy.loadtxt()
を用いてtxt
ファイルを読み込む関数 -
コード例:
numpy.loadtxt()
関数でdtype
パラメータを設定してtxt
ファイルを読み込む -
コード例:
numpy.loadtxt()
関数でdelimiter
パラメータを設定してtxt
ファイルを読み込む -
コード例:
numpy.loadtxt()
関数でusecols
パラメータを設定してtxt
ファイルを読み込む -
コード例:
numpy.loadtxt()
関数でunpack
パラメータを設定してtxt
ファイルを読み込む
Python Numpy numpy.loadtxt()
関数はテキストファイルからデータをロードし、単純なテキストファイルに対して高速なアプローチを提供します。
numpy.loadtxt()
の構文
numpy.loadtxt(fname,
dtype= < class 'float' > ,
comments='#',
delimiter=None,
converters=None,
skiprows=0,
usecols=None,
unpack=False,
ndmin=0,
encoding='bytes',
max_rows=None)
パラメータ
fname |
インポートする txt ファイルのパス |
dtype |
結果の配列のデータ型 |
comments |
コメントの開始を示すために使用される文字または文字のリスト |
delimiter |
ファイル txt の内容を解析する際に使用する区切り文字 |
converters |
列番号を、列文字列を解析して目的の値に変換する関数との対応付けを行う辞書。 |
skiprows |
スキップする行 |
usecols |
読み込まれるカラムインデックス |
unpack |
返された配列を転置し、引数が x, y, z = loadtxt(....) で展開されるようにします。[unpack=True] を用いて展開することができます。 |
ndim |
返される配列の最小次元数 |
encoding |
入力ファイルのデコードに用いられるエンコーディング。 |
max_rows |
skiprows 行の後に読み込む最大行数 |
リターン
ファイル txt
から読み込んだ N 次元配列。
コード例:NumPy txt
ファイルから numpy.loadtxt()
を用いて txt
ファイルを読み込む関数
import numpy as np
from io import StringIO
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4")
a = np.loadtxt(f)
print("The loaded array is:")
print(a)
出力:
The loaded array is:
[[ 3. 6. 8.]
[12. 9. 1.]
[ 2. 3. 4.]]
ファイル txt
を NumPy 配列にロードします。
ここでは、StringIO
はファイルオブジェクトのように機能します。
また、関数 np.loadtxt
の引数にファイルパスを指定して、絶対パスと相対パスの両方を指定することもできます。
コード例:numpy.loadtxt()
関数で dtype
パラメータを設定して txt
ファイルを読み込む
デフォルトでは、txt
ファイルから読み込んだ配列の値のデータ型は float
です。パラメータ dtype
を用いて要素のデータ型を手動で設定することができます。
import numpy as np
from io import StringIO
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4")
a = np.loadtxt(f,dtype="int")
print("The loaded array is:")
print(a)
出力:
The loaded array is:
[[ 3 6 8]
[12 9 1]
[ 2 3 4]]
上記のコードは txt
ファイルからすべての要素を整数として配列に読み込みます。
コード例:numpy.loadtxt()
関数で delimiter
パラメータを設定して txt
ファイルを読み込む
デフォルトでは、値を区切るための delimiter
は whitespace
です。区切り文字は delimiter
パラメータを用いて手動で設定することができます。
import numpy as np
from io import StringIO
f = StringIO("3, 6, 8 \n12, 9, 1 \n 2, 3, 4")
a = np.loadtxt(f,dtype="int",delimiter=",")
print("The loaded array is:")
print(a)
出力:
The loaded array is:
[[ 3 6 8]
[12 9 1]
[ 2 3 4]]
txt
ファイルの値は ,
で区切られているので、txt
ファイルから配列に読み込んでいる間に ,
をデリミタとして使用して値を区切らなければなりません。
コード例:numpy.loadtxt()
関数で usecols
パラメータを設定して txt
ファイルを読み込む
import numpy as np
from io import StringIO
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4")
a = np.loadtxt(f,dtype="int",usecols =(0, 1))
print("The loaded array is:")
print(a)
出力:
The loaded array is:
[[ 3 6]
[12 9]
[ 2 3]]
usecols
は txt
ファイルから読み込む列を指定します。
これは txt
ファイルから 1 列目と 2 列目のみを配列に読み込みます。
コード例:numpy.loadtxt()
関数で unpack
パラメータを設定して txt
ファイルを読み込む
import numpy as np
from io import StringIO
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4")
(x,y,z) = np.loadtxt(f,dtype="int",unpack=True)
print(x)
print(y)
print(z)
出力:
[ 3 12 2]
[6 9 3]
[8 1 4]
配列を転置し、転置された配列の行を指定された変数に展開します。
著者: Suraj Joshi
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn