импорт::

Считайте данные о CSV из ASCII-файла

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

import::csv(filename, <separator>, <NonNested>, <Trim>, <DecimalComma>)
import::csv(n, <separator>, <NonNested>, <Trim>, <DecimalComma>)

Описание

import::csv используется, чтобы считать CSV (“Запятая Разделенные Значения” или “Символьные Разделенные Значения”) файлы данных, произведенные внешними программами, как Microsoft® Excel®. CSV является основанным на ASCII форматом файла табличных данных, официально заданным в RFC 4180, которому разделил поля символ запятой.

Примечание

Некоторые локализованные версии Microsoft Excel используют точки с запятой вместо запятых! Установите параметр separator, чтобы изменить разделитель по умолчанию.

import::csv(filename) считывает данные в файле filename. Данные о файле, разделенные запятой, рассматриваются как различные элементы данных. Результатом является список списков, каждого подсписка, представляющего одну строку файла.

import::csv(filename, separator) считывает данные в файле filename. Данные о файле, разделенные символьным separator, рассматриваются как различные элементы данных. Результатом является список списков, каждого подсписка, представляющего одну строку файла.

import::csv(filename, separator, NonNested) считывает данные в файле filename как одна запись данных. Данные о файле, разделенные символьным separator, рассматриваются как различные элементы данных. Результатом является невложенный список плоскости, содержащий данные всех строк файла.

В отличие от finput, данные не должны быть закончены двоеточием или точкой с запятой. Данные, разделенные separator, интерпретированы как один элементы данных. Разделитель по умолчанию является запятой.

Проигнорированы пустые строки.

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

import::csv пытается преобразовать номер, содержавшийся в файле CSV к допустимому номеру MuPAD. Например: 1,234.56 или 1 234.56 преобразованы в MuPAD номер 1234.56. Много стран используют запятую, чтобы разделить неотъемлемую и дробную часть вместо точки, используемой в Англии и США. Например: 1234,56 или 1.234,56 преобразованы в 1 234,56. import::csv ожидает этот числовой формат, если опция DecimalComma будет дана.

Примечание

Запятая как разделитель CSV не целесообразна, если запятая используется, чтобы разделить тысячи в номере, или десятичная запятая используется. В большинстве случаев файл CSV использует точку с запятой, чтобы разделить данные. Так, точка с запятой должна использоваться в качестве разделителя.

Примечание

Все числа, содержавшиеся в файле CSV, должны использовать тот же разделитель основания, смешанные форматы не могут быть преобразованы.

С NonNested результатом будет список, содержащий все данные. В противном случае результатом является список списка, каждого “внутреннего” списка, представляющего строку файла CSV.

С Trim удалены начальные и конечные пробелы в строках.

Если файл задан строкой, соответствующий файл открыт и закрыт, автоматически. Если пользователь открыл текстовый файл в режиме Read и передает дескриптор файла, чтобы импортировать:: readdata, файл остается открытым и должен быть закрыт пользователем.

Файлы, сжатые с gzip или в совместимом формате, чей конец имен в “.gz”, автоматически распаковываются, будучи считанным import::csv.

import::csv(filename) ищет файл в различных директориях:

  • Во-первых, имя интерпретировано как имя файла прямого доступа: filename конкатенирован к каждой директории, данной переменной окружения READPATH.

  • Затем имя файла интерпретировано как абсолютный путь.

  • Затем имя файла интерпретировано относительно “рабочей директории”.

  • Наконец, имя файла конкатенировано к пути к каталогу.

Если файл может быть открыт с одним из этого, называет, то файл читается.

Обратите внимание на то, что значение “рабочей директории” зависит от операционной системы. В системах Microsoft Windows® и в Apple Mac OS X систем, “рабочая директория” является папкой, где MuPAD установлен. В системах UNIX® это - текущая рабочая директория, в которой был запущен MuPAD; когда запущено с меню или настольного элемента, это обычно - корневой каталог пользователя.

Разделитель пути (“/”) вставляется по мере необходимости при конкатенации данного пути и filename.

Если файл задан именем файла, нет никакой потребности открыть или закрыть файл через fopen и fclose, соответственно. Это сделано автоматически import::readdata.

Вместо имени файла также может использоваться дескриптор файла файла, открытого через fopen. Обратите внимание на то, что файл, должно быть, был открыт в режиме Read fopen. Если дескриптор файла используется, соответствующий файл не закрывается автоматически, но должен быть закрыт пользователем через fclose.

Примеры

Пример 1

Мы хотим считать данные о CSV в сеанс MuPAD. Примите, что файл “datafile.csv” содержит следующие два столбца данных о ASCII:

a ,12.5
  a-b   ,1234.56

import::csv возвращает следующий список, представляющий данные в файле:

data := import::csv("datafile.csv")

data := import::csv("datafile.csv", Trim)

data := import::csv("datafile.csv", NonNested)

Пример 2

Давайте примем, что файл “datafile.csv” содержит следующие данные о ASCII:

a ;12.5
a-b;1,234.56 
a b; -12345.6789E-02

Мы задаем разделитель данных ";" для чтения данных:

import::csv("datafile.csv", ";")

Пример 3

Давайте примем, что файл “datafile.csv” содержит следующие данные о ASCII:

abc;12,5
a-b;1.234,56 
a b; -12345.6789E-02

Мы задаем разделитель данных ";" и опция DecimalComma для чтения данных:

import::csv("datafile.csv", ";", DecimalComma)

Параметры

filename

Имя файла: непустая строка символов

n

Дескриптор файла обеспечивается fopen: положительное целое число

separator

Разделитель между элементами данных: символьная строка длины 1 (отдельный символ). Разделитель по умолчанию является запятой (односимвольная строка ",").

Опции

NonNested

Возвратите все данные о файле как одну запись данных в невложенном списке. Данные всех строк упорядочены последовательно в этом списке.

Trim

Удалены начальные и конечные пробелы в строках.

DecimalComma

Десятичная запятая вместо десятичной точки используется в качестве разделителя основания в файле CSV.

Возвращаемые значения

Вложенный список списков. Подсписки содержат данные отдельных строк. С опцией NonNested, простой список, содержащий все элементы данных от каждой строки в файле.

Смотрите также

Функции MuPAD

Для просмотра документации необходимо авторизоваться на сайте