pandas.read_stata

pandas.read_stata(filepath_or_buffer, convert_dates=True, convert_categoricals=True, encoding=None, index=None, convert_missing=False, preserve_dtypes=True, columns=None, order_categoricals=True, chunksize=None, iterator=False)[source]

将Stata文件读入DataFrame

参数:

filepath_or_buffer:字符串或类文件对象

实现二进制read()函数的.dta文件或对象的路径

convert_dates:boolean,默认为True

将日期变量转换为DataFrame时间值

convert_categoricals:boolean,默认为True

读取值标签并将列转换为分类/因子变量

encoding:string,None或encoding

用于解析文件的编码。none默认为iso-8859-1。

index:索引列的标识符

应该用作DataFrame索引的列的标识符

convert_missing:boolean,默认为False

指示是否将缺失值转换为其Stata表示的标志。如果为False,则缺少的值将替换为nans。如果为True,则包含缺少值的列将返回对象数据类型,缺少的值将由StataMissingValue对象表示。

preserve_dtypes:boolean,默认为True

保留Stata数据类型。如果为False,数值数据将被转换为pandas外部数据的默认类型(float64或int64)

:list或None

要保留的列。将按给定顺序返回列。无返回所有列

order_categoricals:boolean,默认为True

指示转换的分类数据是否有序的标志。

chunksize:int,default无

返回StataReader对象的迭代,返回具有给定行数的块

迭代器:boolean,默认为False

返回StataReader对象

返回:

DataFrame或StataReader

例子

读取Stata dta文件:

>>> df = pandas.read_stata('filename.dta')

读取10000行块中的Stata dta文件:

>>> itr = pandas.read_stata('filename.dta', chunksize=10000)
>>> for chunk in itr:
>>>     do_something(chunk)
Scroll To Top