【问题标题】:None of Index are in the columns没有索引在列中
【发布时间】:2020-02-23 23:40:49
【问题描述】:

我试图描述一个列表值,但出现了这个错误:

KeyError: "None of [Index(['...'],\n dtype='object')] are in the [columns]"

我尝试搜索空格。我已将标头设置为 0 并尝试了 delim_whitespace=True 但没有任何空格,因此我将其删除。

%matplotlib inline
import scipy as sp
import pandas as pd
import matplotlib.pyplot as plt
import statsmodels.formula.api as sm
import csv

df = pd.read_csv('Dados.csv', sep=";", header=0)
x1 = df['com_proc'].values.tolist()
y = df['result_op'].values.tolist()

dados = pd.DataFrame(data=df)
dados

print("Estatísticas descritivas de y:")
dados[y].describe()

Dataframe 按原样显示,让我认为它没有任何问题。问题始于dados[y].describe()

【问题讨论】:

  • 你想用dados[y].describe()做什么,y'result_op' 的值,不太可能是df 的列名。
  • y 中的某些值不是dados 的列。加上read_csv 给出了一个数据框
  • 谢谢,将“y”改为“result_op”确实有效,但是,如果我一开始就定义了,为什么不能使用“y”?
  • 如果你想在你的数据框中添加'y',你需要添加它。 df['y'] = df['result_op'].values.tolist() 或更好 df['y'] = df['result_op'] .
  • 这正是我想要的!非常感谢 :) df['y'] = df['result_op'].values.tolist() 有什么区别。和 y = df['result_op'].values.tolist() ?

标签: python python-3.x pandas jupyter-notebook


【解决方案1】:

df['result_op'] 指向列中的值。
DataFrame.describe()Series.describe() 仅适用于具有有效名称的人。
dados[y] 不返回任何内容,更不用说dados[y].describe()

【讨论】:

    猜你喜欢
    • 2018-06-22
    • 1970-01-01
    • 2014-05-01
    • 1970-01-01
    • 2019-07-16
    • 2020-12-27
    • 2012-05-31
    • 2021-08-06
    • 2019-04-27
    相关资源
    最近更新 更多