[英]How to import .dta via pandas and describe data?
我是python的新手,有一個簡單的問題。 第一步,我想加載我在Stata中創建的一些示例數據。 第二步,我想用python描述數據-也就是說,我想要一個導入變量名的列表。 到目前為止,我已經做到了:
from pandas.io.stata import StataReader
reader = StataReader('sample_data.dta')
data = reader.data()
dir()
我收到以下錯誤:
anaconda/lib/python3.5/site-packages/pandas/io/stata.py:1375: UserWarning: 'data' is deprecated, use 'read' instead
warnings.warn("'data' is deprecated, use 'read' instead")
這是什么意思,我該如何解決? 而且, dir()
是了解我在數據中具有哪些變量的正確方法嗎?
在pandas 0.18.1
版本中已不建議使用pandas.io.stata.StataReader.data
讀取stata
文件,因此您將收到該警告。
相反,您必須使用pandas.read_stata
讀取文件,如下所示:
df = pd.read_stata('sample_data.dta')
df.dtypes ## Return the dtypes in this object
有時這對我不起作用,尤其是在數據集很大時。 所以我在這里建議的是2個步驟(Stata和Python)
在Stata中,編寫以下命令:
export excel Cevdet.xlsx, firstrow(variables)
並復制變量標簽,寫以下內容
describe, replace
list
export excel using myfile.xlsx, replace first(var)
restore
這將為您生成兩個文件Cevdet.xlsx
和myfile.xlsx
現在您去看Jupyter筆記本
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('Cevdet.xlsx')
這將允許您將兩個文件讀入jupyter(python 3)
我的建議是保存此數據文件(尤其是大文件時)
df.to_pickle('Cevdet')
下次打開jupyter時,您只需運行
df=pd.read_pickle("Cevdet")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.