Spec-Zone.ru › pandas 2

pandas.read_stata

pandas.read_stata(filepath_or_buffer, *, convert_dates=True, convert_categoricals=True, index_col=None, convert_missing=False, preserve_dtypes=True, columns=None, order_categoricals=True, chunksize=None, iterator=False, compression='infer', storage_options=None)[source]

Чтение файла Stata в DataFrame.

Параметры:
filepath_or_buffer:str, path object или file-like object

Любой допустимый путь к файлу является приемлемым. Строка может быть URL-адресом. Поддерживаются URL-схемы http, ftp, s3 и file. Для URL-адресов файлов ожидается хост. Локальный файл может быть: file://localhost/path/to/table.dta.

Если вы хотите передать объект пути, pandas принимает любой os.PathLike.

Под file-like объектом мы подразумеваем объекты с методом read(), например, дескриптор файла (например, с помощью встроенной функции open ) или StringIO.

convert_dates:bool, по умолчанию True

Преобразовать переменные дат в значения времени DataFrame.

convert_categoricals:bool, по умолчанию True

Чтение меток значений и преобразование столбцов в категориальные/факторные переменные.

index_col:str, необязательно

Столбец для установки в качестве индекса.

convert_missing:bool, по умолчанию False

Флаг, указывающий, нужно ли преобразовывать пропущенные значения в их представления Stata. Если False, пропущенные значения заменяются на nan. Если True, столбцы, содержащие пропущенные значения, возвращаются с типами данных object, а пропущенные значения представляются объектами StataMissingValue.

preserve_dtypes:bool, по умолчанию True

Сохранить типы данных Stata. Если False, числовые данные повышаются до стандартных типов pandas для внешних данных (float64 или int64).

columns:list или None

Столбцы для сохранения. Столбцы будут возвращены в заданном порядке. None возвращает все столбцы.

order_categoricals:bool, по умолчанию True

Флаг, указывающий, упорядочены ли преобразованные категориальные данные.

chunksize:int, по умолчанию None

Возврат объекта StataReader для итераций, возвращает куски с заданным количеством строк.

iterator:bool, по умолчанию False

Возврат объекта StataReader.

compression:str или dict, по умолчанию ‘infer’

Для онлайн-распаковки данных на диске. Если ‘infer’ и ‘filepath_or_buffer’ — путь, определить сжатие по следующим расширениям: ‘.gz’, ‘.bz2’, ‘.zip’, ‘.xz’, ‘.zst’, ‘.tar’, ‘.tar.gz’, ‘.tar.xz’ или ‘.tar.bz2’ (в противном случае сжатие отсутствует). При использовании ‘zip’ или ‘tar’, файл ZIP должен содержать только один файл данных для чтения. Установите в значение None для отсутствия распаковки. Также может быть словарь с ключом 'method', установленным в одно из {'zip', 'gzip', 'bz2', 'zstd', 'xz', 'tar'} и другие пары ключ-значение передаются zipfile.ZipFile, gzip.GzipFile, bz2.BZ2File, zstandard.ZstdDecompressor, lzma.LZMAFile или tarfile.TarFile, соответственно. В качестве примера, можно передать следующее для распаковки Zstandard с помощью пользовательского словаря сжатия: compression={'method': 'zstd', 'dict_data': my_compression_dict}.

Новое в версии 1.5.0: Добавлена поддержка файлов .tar.

storage_options:dict, необязательно

Дополнительные параметры, которые имеют смысл для определенного подключения к хранилищу, например, хост, порт, имя пользователя, пароль и т. д. Для HTTP(S) URL-адресов пары ключ-значение передаются в urllib.request.Request в качестве параметров заголовка. Для других URL-адресов (например, начинающихся с «s3://» и «gcs://») пары ключ-значение передаются в fsspec.open. Подробнее см. в fsspec и urllib, а более подробные примеры вариантов хранения см. здесь.

Возвращаемое значение:
DataFrame или pandas.api.typing.StataReader

См. также

io.stata.StataReader

Читатель низкого уровня для файлов данных Stata.

DataFrame.to_stata

Экспорт файлов данных Stata.

Примечания

Категориальные переменные, считанные с помощью итератора, могут иметь не те же категории и тип данных. Это происходит, когда переменная, хранящаяся в файле DTA, связана с неполным набором меток значений, которые метят только строгую подгруппу значений.

Примеры

Создание dummy stata для этого примера

>>> df = pd.DataFrame({'animal': ['falcon', 'parrot', 'falcon', 'parrot'],
...                     'speed': [350, 18, 361, 15]})  
>>> df.to_stata('animals.dta')  

Чтение файла Stata dta:

>>> df = pd.read_stata('animals.dta')  

Чтение файла Stata dta кусками по 10 000 строк:

>>> values = np.random.randint(0, 10, size=(20_000, 1), dtype="uint8")  
>>> df = pd.DataFrame(values, columns=["i"])  
>>> df.to_stata('filename.dta')  
>>> with pd.read_stata('filename.dta', chunksize=10000) as itr: 
>>>     for chunk in itr:
...         # Operate on a single chunk, e.g., chunk.mean()
...         pass  

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.read_stata.html

Spec-Zone.ru

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