【问题标题】:AttributeError: 'list' object has no attribute 'loc'AttributeError: 'list' 对象没有属性 'loc'
【发布时间】:2021-01-29 11:42:02
【问题描述】:

我有一些来自 API 的数据框作为数据列表中显示的变量。当我尝试执行某些功能时,错误显示:

AttributeError: 'list' 对象没有属性 'loc'

data = ['dataA','dataB','dataC','dataD']

for i in data:
     exec('{} = pd.DataFrame()'.format(i))

for i in data:
    ma = 6

    smaString = "SMA" + str(ma)

    data[smaString] = data.iloc[:,3].rolling(window = ma).mean()

    data = data.iloc[ma:]

任何帮助将不胜感激。 谢谢。

【问题讨论】:

  • 您没有从列表中创建数据框。 exec('{} = pd.DataFrame()'.format(i)) 这很糟糕,尝试查找如何将列表转换为数据框。

标签: python


【解决方案1】:

要回答您的问题,会弹出错误,因为“数据”不是数据框而是列表。 'iloc' 或 'loc' 函数不能用于列表。

在您的问题中,您已显示错误消息包含“loc”,而您在代码中使用了“iloc”。这是两个不同的东西:

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.loc.html https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.iloc.html

此外,还不清楚您想从这里的代码中实现什么。

【讨论】:

    猜你喜欢
    • 2020-12-18
    • 1970-01-01
    • 2023-04-09
    • 2014-09-08
    • 2016-01-30
    • 2020-12-15
    • 2016-04-15
    • 2014-04-15
    • 1970-01-01
    相关资源
    最近更新 更多