将文本文件导入 Numpy 数组
Numpy 是“Numerical Python”的首字母缩写。它是Python用于支持 n 维数组的库。但是您有没有想过将数据从文本文件加载到 NumPy 中。别担心,我们将在本文中讨论相同的内容。要将文本文件导入 Numpy 数组,我们在 Numpy 中有两个函数:
- numpy.loadtxt() – 用于加载文本文件数据
- numpy.genfromtxt() – 用于从文本文件加载数据,缺失值按定义处理。
注:numpy.loadtxt()等效函数numpy.genfromtxt()无数据丢失时。
方法一: numpy.loadtxt()
句法 :
numpy.loadtxt(fname, dtype = float, comments=’#’, delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0, encoding=’bytes’, max_rows=None, *, like= None)
numpy.loadtxt() 的默认数据类型(dtype)参数是浮点型。
示例 1:将文本文件导入 Numpy 数组
本示例中考虑了以下“example1.txt”文本文件。
Python3
import numpy as np
# Text file data converted to integer data type
File_data = np.loadtxt("example1.txt", dtype=int)
print(File_data)
Python3
import numpy as np
# skipping first row
# converting file data to string
data = np.loadtxt("example2.txt", skiprows=1, dtype='str')
print(data)
Python3
import numpy as np
# only column1 data is imported into numpy
# array from text file
data = np.loadtxt("example3.txt", usecols=1, skiprows=1, dtype='str')
for each in data:
print(each)
Python3
import numpy as np
Data = np.genfromtxt("example4.txt", dtype=str,
encoding=None, delimiter=",")
print(Data)
Python3
import numpy as np
# skipping last line in the file
Data = np.genfromtxt("example5.txt", dtype=str,
encoding=None, skip_footer=1)
print(Data)
输出 :
[[ 1 2]
[ 3 4]
[ 5 6]
[ 7 8]
[ 9 10]]
示例 2:通过跳过第一行将文本文件导入 NumPy 数组
蟒蛇3
import numpy as np
# skipping first row
# converting file data to string
data = np.loadtxt("example2.txt", skiprows=1, dtype='str')
print(data)
输出 :
[['2' 'Bunty']
['3' 'Tinku']
['4' 'Rina']]
示例 3:仅将文本文件的第一列(名称)导入 numpy 数组
在从0 NumPy的阵列开始索引因此,在文本文件中的辊柱是第0列,名称列是第1列和标记是在文本文件“example3.txt”第2列。
蟒蛇3
import numpy as np
# only column1 data is imported into numpy
# array from text file
data = np.loadtxt("example3.txt", usecols=1, skiprows=1, dtype='str')
for each in data:
print(each)
输出 :
Ankit
Bunty
Tinku
Rina
Rajesh
方法二:numpy.genfromtxt()
句法 :
numpy.genfromtxt(fname, dtype=float, comments=’#’, delimiter=None, skip_header=0, skip_footer=0, converters=None, missing_values=None, filling_values=None, usecols=None, names=None,excludelist=None, deletechars=” !#$%&'()*+, -./:;<=>?@[\\]^{|}~”, replace_space=’_’, autostrip=False, case_sensitive=True, defaultfmt=’f%i’, unpack=None, usemask=False, loose=True, invalid_raise=True, max_rows=None, encoding=’bytes’, *, like=None)
除了 numpy.genfromtxt() 中的 fname(filename) 之外,所有其他参数都是可选的。
示例 1:
蟒蛇3
import numpy as np
Data = np.genfromtxt("example4.txt", dtype=str,
encoding=None, delimiter=",")
print(Data)
输出 :
[['a' 'b' 'c' 'd']
['e' 'f' 'g' 'h']]
示例 2:通过跳过最后一行将文本文件导入 numpy 数组
蟒蛇3
import numpy as np
# skipping last line in the file
Data = np.genfromtxt("example5.txt", dtype=str,
encoding=None, skip_footer=1)
print(Data)
输出 :
[['This' 'is' 'GeeksForGeeks' 'Website']
['How' 'are' 'You' 'Geeks?']
['Geeks' 'for' 'Geeks' 'GFG']]