Рубрики
Без рубрики

Numpy genfromtxt () | Как использовать numpy genfromtxt ()

Numpy GenFromtxt () Функция в Python используется для загрузки данных из текстовых файлов, при этом отсутствующие значения обрабатываются, как указано. Отказ

Автор оригинала: Team Python Pool.

Вступление

Numpy – это имя, которое пришло из Численный питон. Это библиотека в Python, которая выполняет N-мерные операции на массивах. Но вы когда-нибудь думали о загрузке данных в Numpy из текстовых файлов? Мы можем сделать это с двумя функциями I.e. numpy.genfromtxt () и numpy.loadttxt () Отказ В этом руководстве мы будем изучать numpy genfromtxt ().

Что такое numpy genfromtxt ()?

Мы используем numpy genfromtxt (), чтобы загрузить данные из текстовых файлов, при этом отсутствующие значения обрабатываются, как указано.

Синтаксис

numpy.genfromtxt(fname, dtype=, comments='#', delimiter=None, skip_header=0, skip_footer=0, converters=None, missing_values=None, filling_values=None, usecols=None, names=None, excludelist=None, deletechars=" !#$%&'()*+, -./:;<=>[email protected][\\]^{|}~", 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)

Параметры

  • FNAME: Это файл, имя файла, список, строка, список строки или генератор для чтения. Если имя файла с расширением GZ или BZ2 Затем файл распакован. Примечание. Этот генератор всегда должен возвращать строки байтов Отказ Строки в списке рассматриваются как линии.
  • dtype: Это тип данных полученного массива, который является необязательным входом. Если мы устанавливаем Type None, то DTYPES будет определяться содержимым каждой колонны индивидуально.
  • Комментарий: по желанию. Мы используем этот символ, чтобы указать начало комментария. Персонажи, происходящие в строке после комментария, отбрасываются.
  • Разделитель: по желанию. Это строка, используемая для отделения значений по умолчанию, любой последовательный пробел, который возникает, действует как разделитель.
  • Skip_Header: по желанию. Это количество строк, которые мы должны пропустить с начала файла.
  • Skip_footer: по желанию. Это количество строк, которые мы должны пропустить с конца файла.
  • Skip_rows: по желанию. Это было удалено в Numpy 1.10. Так. Вместо этого мы можем использовать Skip_Header.
  • Конвертеры: по желанию. Это заданная функция, которая преобразует данные столбца в значение значения. Конвертеры также используются для обеспечения значения по умолчанию для отсутствующих данных: преобразователи = {3: Lambda S: float (s или 0)}.
  • Отсутствует: по желанию. Это было удалено в Numpy 1.10. Так. Вместо этого мы можем использовать skeed_values.
  • Income_Values: по желанию. Это набор строк, соответствующих отсутствующим данным.
  • filling_values: по желанию. Это набор значений, которые будут использоваться в качестве по умолчанию, когда данные отсутствуют.
  • Ушиболы: по желанию. Это говорит нам о том, какой столбец будет прочитан; 0 – первым.
  • Имена: по желанию. Если имена установлены на true, то имена поля прочитаны с первой строки после первого Skip_Header линий. Разделитель комментариев может необязательно начать эту строку. Если имена нет, будут использоваться имена полей DTYPE.
  • Исключитель: по желанию. Это последовательность списков имен, чтобы исключить. Этот список добавляется в список по умолчанию.
  • Делечары: по желанию. Если строка объединяет недопустимые символы, которые должны быть удалены из имени.
  • Заменить_space: . по желанию. Это персонажи, которые используются в замене белых пространств в именах переменных. По умолчанию он использует «_». ‘
  • AutoStrip: по желанию. Это говорит о том, чтобы автоматически распределить белые пробелы из переменных.
  • defaultfmt: по желанию. Этот формат определяет имена поля по умолчанию.
  • Распаковать: по желанию.
  • Case_Sensitive: по желанию. Если установлено значение true, имена поля чувствительны к регистру, а если false или ‘верхние, имена поля преобразуются в верхний регистр. Если «ниже», они преобразуются в строчные буквы.
  • UEMASK: по желанию. Это логическое значение. Если установлено значение true, он возвращает массив в маске. Иначе это вернет обычный массив.
  • Свободно: по желанию. Это логическое значение. Если установлено значение true, он не вызывает ошибку для недопустимых значений.
  • Invalid_raise: по желанию. Если мы установим его на true, то исключение поднимается, если несоответствие обнаружено в количестве столбцов. В противном случае испускается предупреждение, а оскорбительные линии пропущены.
  • Max_rows: по желанию. Он рассказывает о максимальном количестве строк, которые будут прочитаны. Мы не можем использовать его с параметром Skip_Footer одновременно. По умолчанию он читает весь файл.
  • кодирование: по желанию. Это используется для декодирования входного файла. Это не позволяет, когда имя файла является объектом файла.
  • Как: Это эталонный объект, позволяющий создать массивы, которые не являются примечательными массивами.

Возвращаемое значение numpy genfromtxt ()

Функция дает возвращаемое значение в качестве массива. В этом данные читаются из текстового файла. Если мы установили USEMASK в True, то это маскируемый массив.

Примеры numpy genfromtxt ()

Давайте понимать numpy genfromtxt () со всеми параметрами с помощью примеров:

1. Использование str, dtype, кодирования и разделителя в качестве параметра

В этом примере мы будем импортировать 2 библиотеки из Python, I.E., Numpy и Stringio. Затем мы возьмем входную строку в виде списка и применяем ее с данным параметром и увидеть вывод.

#import numpy as np 
#from io import StringIO

import numpy as np
from io import StringIO

str = StringIO("1,5.5,Latracal")
data1 = np.genfromtxt(str, dtype= str, encoding = None, delimiter=",")

Print("output : ",data1)

Выход:

output :  (1, 5.5, b'Latra')

Объяснение:

Во-первых, мы импортировали две библиотеки, то есть Numpy с псевдонимами как NP и из IO Import Stringio. Во-вторых, мы взяли входную строку в ул. Наконец, мы применили функцию GenFromtxt (), в которой мы дали некоторые ул, Dtype, кодировку и разделитель и напечатали вывод. Следовательно, вы можете увидеть вывод.

2. Использование Skip_Header и Skip_footer

В этом примере мы напишем файл. Мы импортируем Numpy Library в качестве имени псевдонима NP. Затем мы применим функцию и напишем имя файла в функцию с другими параметрами.

Использование Skip_Header и Skip_footer
#import numpy as np
import numpy as np 

Data = np.genfromtxt("latra.txt", dtype=str, 
					encoding=None, skip_footer=1, skip_header=1) 
print(Data) 

Выход:

This is the best website
I love this website

Объяснение:

Здесь мы сделали текстовый файл с именем latra.txt, в котором мы написали некоторые контент. Затем мы импортировали Numpy Library. Затем мы применили функцию genfromtxt (), в которой мы дали текстовое имя файла, dtype, кодирование , пропустить заголовок и пропустить нижний колонтитул, который будет пропустить первую и последнюю строку и распечатать линии, содержащие в файле. Следовательно, вы можете увидеть вывод.

3. Показаны комментарии в numpy genfromtxt ()

В этом примере мы покажем, как комментарии работают в файле. Для этого мы импортируем две библиотеки, Numpy и Stringio, а затем ввод. После этого мы применим функцию numpy genfromtxt () и см. Выход.

#import numpy and StringIO library
import numpy as np
from io import StringIO

f = StringIO('''
Latra,# of chars
Latracal Solution,13
Solutions,8''')
Data = np.genfromtxt(f, dtype='S12,S12', delimiter=',')
print(Data)

Выход:

[(b'Latra', b'') (b'Latracal Sol', b'13') (b'Solutions', b'8')]

Объяснение:

Здесь мы покажем, как комментарии работают в файлах. Для этого мы импортируем библиотеку Numpy и Stringio. Затем мы возьмем входную строку F, в которой мы комментируем символом #. Затем мы будем применять функцию genfromtxt (). Наконец, мы распечатаем вывод и увидим после удаления строки символа # и не напечатаны в массиве выходных данных.

4. Использование AutoRip в Numpy GenFromtxt ()

В этом примере мы будем импортировать библиотеку numpy и Stringio. Затем мы возьмем ввод в качестве данных и применяем функцию с параметрами и распечатайте вывод с параметром AutoStrip и без него. Следовательно, мы можем увидеть разницу с параметром AutoStrip.

import numpy as np
from io import StringIO
data = u"Latra, sol  , 2\n 3, xyz, 4"
# Without autostrip
d = np.genfromtxt(StringIO(data), delimiter=",", dtype="|U5")

print("without autostrip :\n ",d)
d = np.genfromtxt(StringIO(data), delimiter=",", dtype="|U5",autostrip =True)
print("with autostrip : \n",d)

Выход:

without autostrip :
  [['Latra' ' sol ' ' 2']
 ['3' ' xyz' ' 4']]
with autostrip : 
 [['Latra' 'sol' '2']
 ['3' 'xyz' '4']]

Объяснение:

Здесь мы импортировали две библиотеки, Numpy и Stringio. Мы внесли вклад в строку данных. Затем мы будем применять функцию genfromtxt () со своими параметрами. В этом, во-первых, мы распечатаем вывод без параметра «AutoStrip», и после этого мы распечатаем вывод с «Автоспорт» параметр. Следовательно, мы можем увидеть вывод.

Разница между GenFromtxt () и LoadTxt ()

Numpy genfromtxt ()

Мы используем numpy genfromtxt (), чтобы загрузить данные из текстовых файлов, при этом отсутствующие значения обрабатываются, как указано.

Numpy loadtxt ()

Мы используем Numpy LoadTXT () для загрузки данных из текстовых файлов, с целью быть быстрой считывателем для простых текстовых файлов.

Пример genfromtxt () и loadtxt ()

В этом примере мы будем использовать функцию одновременно, так и соблюдайте разницу между ними, просто увидев вывод и их определение.

import numpy as np

# StringIO behaves like a file object
from io import StringIO

a = StringIO("M 21 72\nF 35 58")
b = np.loadtxt(d, dtype ={'names': ('gender', 'age', 'weight'),'formats': ('S1', 'i4', 'f4')})

print(b)
d = StringIO(u"11.3abcde")
e = np.genfromtxt(s, dtype=None, names=['intvar','fltvar','strvar'],
    delimiter=[1,3,5],encoding = None)
print("\n")
print(e)

Выход:

[(b'M', 21, 72.) (b'F', 35, 58.)]

(1, 1.3, 'abcde')

Объяснение:

Во-первых, мы импортировали Numpy Library как NP, а также импортировали библиотеку Stringio. Во-вторых, мы внесли вклад и применили функцию LoadTTTC () и напечатали вывод. В-третьих, мы предприняли ввод как D и применили функцию GenFromtxt () и напечатали вывод. Следовательно, вы можете увидеть вывод.

Заключение

В этом руководстве мы узнали о том, как использовать функцию Numpy GenFromtxt (). Мы подробно объяснили концепцию, принимая все его параметры в примере. Мы подробно объяснили все примеры, так что вы понимаете каждый параметр в глубине. Следовательно, вы можете использовать функцию и его параметры в соответствии с вашими потребностями.