Python 3.x 如何通过pandas导入.dta并描述数据?
我是python新手,有一个简单的问题。在第一步中,我想加载我在Stata中创建的一些示例数据。在第二步中,我想用python描述数据——也就是说,我想要一个导入变量名的列表。到目前为止,我已经做到了:Python 3.x 如何通过pandas导入.dta并描述数据?,python-3.x,pandas,import,error-handling,stata,Python 3.x,Pandas,Import,Error Handling,Stata,我是python新手,有一个简单的问题。在第一步中,我想加载我在Stata中创建的一些示例数据。在第二步中,我想用python描述数据——也就是说,我想要一个导入变量名的列表。到目前为止,我已经做到了: from pandas.io.stata import StataReader reader = StataReader('sample_data.dta') data = reader.data() dir() 我得到以下错误: anaconda/lib/python3.5/site-p
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()
是了解数据中的变量的正确方法吗?用于读取stata
文件的方法在pandas 0.18.1
版本中已被弃用,因此您将收到该警告
相反,您必须使用读取文件,如图所示:
df = pd.read_stata('sample_data.dta')
df.dtypes ## Return the dtypes in this object
在pandas 0.18.1
版本中,用于读取stata
文件的方法已被弃用,因此您将收到该警告
相反,您必须使用读取文件,如图所示:
df = pd.read_stata('sample_data.dta')
df.dtypes ## Return the dtypes in this object
有时,这对我来说不起作用,尤其是当数据集很大时。因此,我在这里提出的是两个步骤(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)
我的建议是保存这个数据文件(特别是如果它很大的话)
下次打开jupyter时,您只需运行
df=pd.read_pickle("Cevdet")
有时,这对我来说不起作用,尤其是当数据集很大时。因此,我在这里提出的是两个步骤(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)
我的建议是保存这个数据文件(特别是如果它很大的话)
下次打开jupyter时,您只需运行
df=pd.read_pickle("Cevdet")
谢谢,我使用了
import pandas
和您建议的命令。但是,df.dtyps不返回数据类型。有什么提示吗?你必须在它前面添加一个print
语句。太好了,行得通!非常感谢。我希望,我现在可以使用VAR了。我可以简单地按名称调用变量,还是必须先指定它们?如果您指的是列,您可以通过df['column name']
访问它们。谢谢我使用了import pandas
和您建议的命令。但是,df.dtyps不返回数据类型。有什么提示吗?你必须在它前面添加一个print
语句。太好了,行得通!非常感谢。我希望,我现在可以使用VAR了。我可以简单地按名称调用变量吗?还是必须先指定它们?如果您指的是列,您可以通过df['column name']
访问它们。