【问题标题】:Invalid Syntax error pandas series无效的语法错误熊猫系列
【发布时间】:2017-07-08 19:25:35
【问题描述】:

我从 jupyter notebook 上的 pandas 开始。在错误消息中,= 运算符下方有一个 ^,但我看不到问题所在。少了什么东西?谢谢!

import pandas as pd
data2 = ([1, 2, 3, 4],  index = ['a', 'b', 'c', 'd'])

s = pd.Series(data2)
print(s.shape)

这是错误:

File "<ipython-input-30-57c99bd7e494>", line 4
    data2 = ([1, 2, 3, 4],  index = ['a', 'b', 'c', 'd'])
                                  ^
SyntaxError: invalid syntax

【问题讨论】:

  • pd.Series([...]) 不等同于x = ([...]); pd.Series(x)。无法提取参数语法并将其保存到变量中。
  • 我认为你能做的最好的是将它保存为字典:data2 = dict(data=[1, 2, 3, 4], index=['a', 'b', 'c', 'd']) 并传递给系列构造函数:pd.Series(**data2)
  • 感谢您的解释。

标签: pandas series


【解决方案1】:

这样做的正确方法是,将数据和索引的变量分开:

import pandas as pd
data2 = [1,2,3,4]
index = ['a','b','c','d']

s = pd.Series(data2,index)
print(s.shape)

或者正如 ayhan 指出的那样,您可以使用 ** 打开字典:

data2 = dict(data=[1,2,3,4], index=['a','b','c','d'])
s = pd.Series(**data2)
print(s.shape)

【讨论】:

  • 不一定是dict,也可以是tuples = pd.Series(*data2)
猜你喜欢
  • 1970-01-01
  • 2021-10-07
  • 1970-01-01
  • 2016-02-06
  • 1970-01-01
  • 2021-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多