我是编码新手,目前正在尝试Udacity Data Science简介课程。试图在演讲中重现一个例子。
以下是代码:
import pandas as pd
import numpy as np
d = {
'name': Series(['Braund', 'Cummings', 'Heikkinen', 'Allen'], index=['a', 'b', 'c', 'd']),
'age': Series([22, 38, 26, 35], index=['a', 'b', 'c', 'd']),
'fare': Series([7.25, 71.83, 8.05], index=['a', 'b', 'd']),
'survived?': Series([False, True, True, False], index['a', 'b', 'c', 'd'])
}
df = DataFrame(d)
print df
这是我的错误:
Traceback (most recent call last):
File "dataframe.py", line 4, in <module>
d = {'name': Series(['Braund', 'Cummings', 'Heikkinen', 'Allen'],
NameError: name 'Series' is not defined
Aschs-MacBook-Air:mystuff aschharwood$
我保存为.py文件并在终端中运行。
非常感谢您的帮助和指导!
答案 0 :(得分:11)
您已将模块导入为命名空间。您尝试使用的类不在本地名称空间中,而是在导入模块的名称空间中。
只需引用正确的命名空间 - 使用pd.__WHAT_YOU_WANT__
:
import pandas as pd
d = {'name': pd.Series(['Braund', 'Cummings', 'Heikkinen', 'Allen'],
index = ['a', 'b', 'c', 'd']), 'age': pd.Series([22, 38, 26, 35],
index = ['a', 'b', 'c', 'd']), 'fare': pd.Series([7.25, 71.83, 8.05], index = ['a', 'b', 'd']),
'survived?': pd.Series([False, True, True, False], index['a', 'b', 'c', 'd'])}
df = pd.DataFrame(d)
print df
答案 1 :(得分:5)
或者,您可以将函数直接导入主命名空间。
from pandas import Series, DataFrame
然后,每次调用它们时,您都可以跳过pd.
前置Series()
和DataFrame
函数调用。换句话说,您可以完全像编写原始代码一样运行原始代码。