'DataFrame' 对象没有属性 'to_dataframe'

数据挖掘 数据框
2022-02-22 11:39:16

我确定我在这里有一个小错误,我忽略了,但是很难弄清楚我需要改变什么。

这是我的代码,直到我遇到错误。

# Load libraries
import pandas as pd
import numpy as np
from pandas.tools.plotting import scatter_matrix
import matplotlib.pyplot as plt
from sklearn import model_selection
from sklearn.metrics import classification_report
from sklearn.metrics import confusion_matrix
from sklearn.metrics import accuracy_score
from sklearn.linear_model import LogisticRegression
from sklearn.tree import DecisionTreeClassifier
from sklearn.neighbors import KNeighborsClassifier
from sklearn.discriminant_analyisis import LinearDiscriminantAnalysis
from sklearn.naive_bayes import GaussianNB
from sklearn.svm import SVC

# Load dataset
names = ['action','reject','approve','occ','loanamt', 'suffolk', 'appinc','typur','unit','married','dep','emp',yjob','self','atotinc','cototinc','hexp']

# from azureml import Workspace
# ws = Workspace(
#      workspace_id='',
#      authorization_token='==',
#      endpoint='https://studioapi.azureml.net'
# )
# ds = ws.datasets['loanapp_c.csv']

ds = pd.read_csv('desktop/python ML/loanapp_c.csv')
dataset = ds.to_dataframe()

我在 Azure 上运行它,现在正尝试在本地进行。这是我得到的错误:

AttributeError                Traceback (most recent call last)
<ipython-input-3-b49a23658806> in <module>()
     32
     33 ds = pd.read_csv('desktop/python ML/loanapp_c.csv')
---> 34 dataset = ds.to_dataframe()
     35
     36 # shape

~/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py in_getattr_(self, name)
     4374 if self._info_axis.can_hold_identifiers_and_holds_name(name):
            return self[name]
  -> 4376 return object._getattribute_(self,name)
     4377
     4378 def _setattr_(self, name, value):

AttributeError: 'DataFrame' object has no attribute 'to_dataframe'

不知道我有什么问题。

2个回答

该函数pd.read_csv()已经是一个 DataFrame,因此这种对象不支持调用.to_dataframe()

您可以使用 来检查变量的类型dsprint(type(ds))您会看到它是 pandas DataFrame 类型。

据我了解。您正在loanapp_c.csv使用ds此代码加载:

ds = pd.read_csv('desktop/python ML/loanapp_c.csv')

ds这里是一个 DataFrame 对象。你正在做的是调用to_dataframe一个已经是 DataFrame 的对象。

从您的代码中删除它dataset = ds.to_dataframe()应该可以解决错误