Spec-Zone.ru › NumPy 1.15

numpy.genfromtxt

numpy.genfromtxt(fname, dtype=<class '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=None, replace_space='_', autostrip=False, case_sensitive=True, defaultfmt='f%i', unpack=None, usemask=False, loose=True, invalid_raise=True, max_rows=None, encoding='bytes') [source]

Загрузка данных из текстового файла с обработкой пропущенных значений, как указано.

Каждая строка после первых skip_header строк разделяется по символу delimiter, а символы после символа comments отбрасываются.

Параметры:
fname : file, str, pathlib.Path, list of str, generator

Файл, имя файла, список или генератор для чтения. Если расширение имени файла gz или bz2, файл предварительно распаковывается. Обратите внимание, что генераторы должны возвращать байтовые строки в Python 3k. Строки в списке или сгенерированные генератором, рассматриваются как строки.

dtype : dtype, optional

Тип данных результирующего массива. Если None, типы данных будут определены по содержимому каждой колонки, индивидуально.

comments : str, optional

Символ, обозначающий начало комментария. Все символы в строке после комментария отбрасываются.

delimiter : str, int, or sequence, optional

Строка, используемая для разделения значений. По умолчанию любые последовательные пробелы действуют как разделитель. Также может быть передан целочисленный или последовательность целых чисел, как ширина(ы) каждого поля.

skiprows : int, optional

skiprows был удален в numpy 1.10. Пожалуйста, используйте skip_header вместо этого.

skip_header : int, optional

Количество строк, пропускаемых в начале файла.

skip_footer : int, optional

Количество строк, пропускаемых в конце файла.

converters : variable, optional

Множество функций, преобразующих данные столбца в значение. Преобразователи также могут использоваться для предоставления значения по умолчанию для пропущенных данных: converters = {3: lambda s: float(s or 0)}.

missing : variable, optional

missing был удален в numpy 1.10. Пожалуйста, используйте missing_values вместо этого.

missing_values : variable, optional

Множество строк, соответствующих пропущенным данным.

filling_values : variable, optional

Множество значений, используемых по умолчанию, когда данные отсутствуют.

usecols : sequence, optional

Столбцы для чтения, где 0 - первый. Например, usecols = (1, 4, 5) извлечёт 2-й, 5-й и 6-й столбцы.

names : {None, True, str, sequence}, optional

Если names равно True, имена полей читаются из первой строки после первых skip_header строк. Эта строка может быть необязательно предваряема разделителем комментариев. Если names является последовательностью или строкой с запятой, имена будут использованы для определения имён полей в структурированном типе данных. Если names равно None, используются имена полей типа данных, если таковые имеются.

excludelist : sequence, optional

Список имён для исключения. Этот список добавляется к стандартному списку [‘return’,’file’,’print’]. Исключённые имена добавляются со знаком подчеркивания: например, file станет file_.

deletechars : str, optional

Строка, объединяющая недопустимые символы, которые должны быть удалены из имён.

defaultfmt : str, optional

Формат, используемый для определения имён полей, например, “f%i” или “f_%02i”.

autostrip : bool, optional

Автоматически удалять пробелы из переменных.

replace_space : char, optional

Символ(ы), используемый(е) для замены пробелов в именах переменных. По умолчанию используется ‘_’.

case_sensitive : {True, False, ‘upper’, ‘lower’}, optional

Если True, имена полей чувствительны к регистру. Если False или ‘upper’, имена полей преобразуются в верхний регистр. Если ‘lower’, имена полей преобразуются в нижний регистр.

unpack : bool, optional

Если True, возвращаемый массив транспонируется, так что аргументы можно распаковать, используя x, y, z = loadtxt(...)

usemask : bool, optional

Если True, возвращается массив с пропусками. Если False, возвращается обычный массив.

loose : bool, optional

Если True, исключения не генерируются при обнаружении неверных значений.

invalid_raise : bool, optional

Если True, при обнаружении несоответствия в количестве столбцов генерируется исключение. Если False, выводится предупреждение, и строки с ошибками пропускаются.

max_rows : int, optional

Максимальное количество строк для чтения. Нельзя использовать вместе с skip_footer. Если задано, значение должно быть не менее 1. По умолчанию читается весь файл.

Введено в версии 1.10.0.

encoding : str, optional

Кодировка, используемая для декодирования входного файла. Не применяется, когда fname является объектом файла. Специальное значение ‘bytes’ позволяет реализовать обратную совместимость, гарантируя получение массивов байтов, когда это возможно, и передаёт строки, закодированные в latin1, конвертерам. Измените это значение, чтобы получить массивы unicode и передать строки в качестве входных данных конвертерам. Если установлено в None, используется системная кодировка по умолчанию. Значение по умолчанию — ‘bytes’.

Введено в версии 1.14.0.

Возвращает:
out : ndarray

Данные, прочитанные из текстового файла. Если usemask равно True, это массив с пропусками.

См. также

numpy.loadtxt
эквивалентная функция, когда пропущенных данных нет.

Примечания

  • При использовании пробелов в качестве разделителей или если разделитель не задан, не должно быть пропущенных данных между двумя полями.
  • Если переменные имеют имена (либо с помощью гибкого типа данных, либо с names), в файле не должно быть заголовков (иначе возникает исключение ValueError).
  • По умолчанию индивидуальные значения не очищаются от пробелов. При использовании пользовательского преобразователя убедитесь, что функция удаляет пробелы.

Ссылки

[1] Руководство пользователя NumPy, раздел Ввод/вывод с NumPy.

Примеры

>>> from io import StringIO
>>> import numpy as np

Файл с запятыми и смешанным типом данных

>>> s = StringIO(u"1,1.3,abcde")
>>> data = np.genfromtxt(s, dtype=[('myint','i8'),('myfloat','f8'),
... ('mystring','S5')], delimiter=",")
>>> data
array((1, 1.3, 'abcde'),
      dtype=[('myint', '<i8'), ('myfloat', '<f8'), ('mystring', '|S5')])

Использование dtype = None

>>> s.seek(0) # needed for StringIO example only
>>> data = np.genfromtxt(s, dtype=None,
... names = ['myint','myfloat','mystring'], delimiter=",")
>>> data
array((1, 1.3, 'abcde'),
      dtype=[('myint', '<i8'), ('myfloat', '<f8'), ('mystring', '|S5')])

Указание dtype и имён

>>> s.seek(0)
>>> data = np.genfromtxt(s, dtype="i8,f8,S5",
... names=['myint','myfloat','mystring'], delimiter=",")
>>> data
array((1, 1.3, 'abcde'),
      dtype=[('myint', '<i8'), ('myfloat', '<f8'), ('mystring', '|S5')])

Пример с полями фиксированной ширины

>>> s = StringIO(u"11.3abcde")
>>> data = np.genfromtxt(s, dtype=None, names=['intvar','fltvar','strvar'],
...     delimiter=[1,3,5])
>>> data
array((1, 1.3, 'abcde'),
      dtype=[('intvar', '<i8'), ('fltvar', '<f8'), ('strvar', '|S5')])

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.15.4/reference/generated/numpy.genfromtxt.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API