用法:
DataFrame.to_stata(path, convert_dates=None, write_index=True, byteorder=None, time_stamp=None, data_label=None, variable_labels=None, version=114, convert_strl=None, compression='infer', storage_options=None, *, value_labels=None)
將 DataFrame 對象導出為 Stata 數據格式。
將 DataFrame 寫入 Stata 數據集文件。 “dta” 文件包含一個 Stata 數據集。
- path:str、路徑對象或緩衝區
字符串、路徑對象(實現
os.PathLike[str]
)或 file-like 對象實現二進製write()
函數。以前這是“fname”
- convert_dates:dict
包含日期時間類型的字典映射列到寫入日期時使用的 stata 內部格式。選項是‘tc’, ‘td’, ‘tm’, ‘tw’, ‘th’, ‘tq’, ‘ty’。列可以是整數或名稱。未指定轉換類型的日期時間列將轉換為 ‘tc’。如果日期時間列具有時區信息,則引發 NotImplementedError。
- write_index:bool
將索引寫入 Stata 數據集。
- byteorder:str
可以是“>”、“sys.byteorder 。
- time_stamp:datetime
用作文件創建日期的日期時間。默認為當前時間。
- data_label:str,可選
數據集的標簽。不得超過 80 個字符。
- variable_labels:dict
包含作為鍵的列和作為值的變量標簽的字典。每個標簽不得超過 80 個字符。
- version:{114, 117, 118, 119, 無},默認 114
在輸出 dta 文件中使用的版本。設置為 None 讓 pandas 根據幀中的列數決定 118 或 119 格式。 Stata 10 及更高版本可以讀取版本 114。 Stata 13 或更高版本可以讀取版本 117。 Stata 14 及更高版本支持版本 118。 Stata 15 及更高版本支持版本 119。版本 114 將字符串變量限製為 244 個字符或更少,而版本 117 及更高版本允許長度不超過 2,000,000 個字符的字符串。版本 118 和 119 支持 Unicode 字符,版本 119 支持超過 32,767 個變量。
版本 119 通常僅應在變量數量超過 dta 格式 118 的容量時使用。以 119 格式導出較小的數據集可能會產生意想不到的後果,並且截至 2020 年 11 月,Stata SE 無法讀取版本 119 文件。
- convert_strl:列表,可選
要轉換為 Stata StrL 格式的字符串列的列名列表。僅在版本為 117 時可用。如果字符串超過 8 個字符並且值重複,則以 StrL 格式存儲字符串可以生成更小的 dta 文件。
- compression:str 或 dict,默認 ‘infer’
用於輸出數據的即時壓縮。如果 ‘infer’ and ‘path’ path-like,則從以下擴展名檢測壓縮:“.gz”、“.bz2”、“.zip”、“.xz”或“.zst”(否則不壓縮)。設置為
None
不壓縮。也可以是鍵'method'
設置為 {'zip'
,'gzip'
,'bz2'
,'zstd'
} 之一的字典,其他鍵值對分別轉發到zipfile.ZipFile
,gzip.GzipFile
,bz2.BZ2File
或zstandard.ZstdDecompressor
。例如,可以傳遞以下內容以加快壓縮速度並創建可重現的 gzip 存檔:compression={'method': 'gzip', 'compresslevel': 1, 'mtime': 1}
。- storage_options:字典,可選
對特定存儲連接有意義的額外選項,例如主機、端口、用戶名、密碼等。對於 HTTP(S) URL,鍵值對作為標頭選項轉發到
urllib
。對於其他 URL(例如以 “s3://” 和 “gcs://” 開頭),鍵值對被轉發到fsspec
。有關詳細信息,請參閱fsspec
和urllib
。- value_labels:字典的字典
包含作為鍵的列和作為值的列值的字典的字典。單個變量的標簽不得超過 32,000 個字符。
- 未實現錯誤
如果日期時間包含時區信息
列 dtype 在 Stata 中不可表示
- ValueError
convert_dates 中列出的列既不是 datetime64[ns] 也不是 datetime.datetime
convert_dates 中列出的列不在 DataFrame 中
分類標簽包含超過 32,000 個字符
參數:
拋出:
例子:
>>> df = pd.DataFrame({'animal': ['falcon', 'parrot', 'falcon', ... 'parrot'], ... 'speed': [350, 18, 361, 15]}) >>> df.to_stata('animals.dta')
相關用法
- Python pandas.DataFrame.to_string用法及代碼示例
- Python pandas.DataFrame.to_sql用法及代碼示例
- Python pandas.DataFrame.to_numpy用法及代碼示例
- Python pandas.DataFrame.to_json用法及代碼示例
- Python pandas.DataFrame.to_xml用法及代碼示例
- Python pandas.DataFrame.to_latex用法及代碼示例
- Python pandas.DataFrame.to_pickle用法及代碼示例
- Python pandas.DataFrame.to_csv用法及代碼示例
- Python pandas.DataFrame.to_dict用法及代碼示例
- Python pandas.DataFrame.to_clipboard用法及代碼示例
- Python pandas.DataFrame.to_hdf用法及代碼示例
- Python pandas.DataFrame.to_markdown用法及代碼示例
- Python pandas.DataFrame.to_excel用法及代碼示例
- Python pandas.DataFrame.to_records用法及代碼示例
- Python pandas.DataFrame.to_parquet用法及代碼示例
- Python pandas.DataFrame.to_xarray用法及代碼示例
- Python pandas.DataFrame.to_period用法及代碼示例
- Python pandas.DataFrame.truncate用法及代碼示例
- Python pandas.DataFrame.transpose用法及代碼示例
- Python pandas.DataFrame.transform用法及代碼示例
注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.DataFrame.to_stata。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。