将文本文件导入Numpy数组中

将文本文件导入Numpy数组中

Numpy是 “Numerical Python “的首字母缩写。它是Python中支持n维数组的一个库。但是你有没有想过从文本文件加载数据到NumPy。别担心,我们将在这篇文章中讨论这个问题。为了将文本文件导入Numpy数组,我们在Numpy中有两个函数。

  1. numpy.loadtxt( ) – 用于加载文本文件数据
  2. numpy.genfromtxt( ) – 用于从文本文件加载数据,缺失值按定义处理。

注意:当没有数据丢失时,numpy.loadtxt( )与numpy.genfromtxt( )是等价函数。

方法1: 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( )的默认数据类型(type)参数是float。

实例1:将文本文件导入Numpy数组中

本例中考虑了以下’example1.txt’文本文件。

将文本文件导入Numpy数组中

import numpy as np
  
  
# Text file data converted to integer data type
File_data = np.loadtxt("example1.txt", dtype=int)
print(File_data)

输出 :

[[ 1  2]
[ 3  4]
[ 5  6]
[ 7  8]
[ 9 10]]

示例2:通过跳过第一行将文本文件导入NumPy数组中

将文本文件导入Numpy数组中

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数组中。

NumPy数组的索引从0开始。因此,文本文件中的Roll列是第0列,Names列是第1列,Marks是文本文件’example3.txt’中的第2列。

将文本文件导入Numpy数组中

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

方法2: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(文件名),其他参数都是可选的。

示例 1:

将文本文件导入Numpy数组中

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数组中

将文本文件导入Numpy数组中

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']]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程