python numpy loadtxt,numpy.loadtxt()函数
为了方便使用和记忆,有时我们会将numpy.loadtxt()缩写为np.loadtxt()。本文主要讲解如何使用它读取txt文件。
要读取txt文件,我们通常使用numpy中的loadtxt()函数。
numpy.loadtxt(fname,dtype=,comments=# ,delimiter=None,converters=None,skiprows=0,usecols=None,unpack=False,ndmin=0)
注:loadtxt的功能是读入数据文件,这里的数据文件要求每一行数据的格式相同。
也就是说,它没有资格获得以下数据:
123
1 2 4 3 5
接下来,举一个例子来说明这个功能:
1、简单的读取
test.txt
1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7
将numpy作为np导入
A=np.loadtxt(test.txt)#最常见的loadtxt
打印(一份)
ot;;">
输出:
[[1. 2. 3. 4.] [2. 3. 4. 5.] [3. 4. 5. 6.] [4. 5. 6. 7.]]
数组中的数都为浮点数,原因为Python默认的数字的数据类型为双精度浮点数
2、skiprows=n:指跳过前n行
test.txt
A B C D 2 3 4 5 3 4 5 6 4 5 6 7
a = np.loadtxt('test.txt', skiprows=1, dtype=int) print(a)
输出:
[[2 3 4 5] [3 4 5 6] [4 5 6 7]]
3、comment=‘#’:如果行的开头为#就会跳过该行
test.txt
A B C D 2 3 4 5 3 4 5 6 #A B C D 4 5 6 7
a = np.loadtxt('test.txt', skiprows=1, dtype=int, comments='#') print(a)
输出:
[[2 3 4 5] [3 4 5 6] [4 5 6 7]]
4、usecols=[0,2]:是指只使用0,2两列,参数类型为list
a = np.loadtxt('test.txt', skiprows=1, dtype=int, comments='#',usecols=(0, 2), unpack=True) print(a)
输出:
[[2 3 4] [4 5 6]]
unpack是指会把每一列当成一个向量输出, 而不是合并在一起。如果unpack为false或者参数的话输出结果如下:
[[2 4] [3 5] [4 6]]
test.txt
A, B, C, D 2, 3, 4, 5 3, 4, 5, 6 #A B C D 4, 5, 6, 7
5、delimiter:数据之间的分隔符。如使用逗号","。
6、converters:对数据进行预处理
def add_one(x): return int(x)+1 #注意到这里使用的字符的数据结构 a = np.loadtxt('test.txt', dtype=int, skiprows=1, converters={0:add_one}, comments='#', delimiter=',', usecols=(0, 2), unpack=True) print a
def add_one(x): return int(x)+1 #注意到这里使用的字符的数据结构 a = np.loadtxt('test.txt', dtype=int, skiprows=1, converters={0:add_one}, comments='#', delimiter=',', usecols=(0, 2), unpack=True) print a
以上就是numpy.loadtxt() 读取txt文件的几种方法。更多Python学习推荐:PyThon学习网教学中心。
(推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。