Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何通过pandas导入.dta并描述数据?_Python 3.x_Pandas_Import_Error Handling_Stata - Fatal编程技术网

Python 3.x 如何通过pandas导入.dta并描述数据?

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

我是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()
是了解数据中的变量的正确方法吗?

用于读取
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']
访问它们。