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)