我正在读取一个 CSV 文件,出于建模目的,我需要创建一个目标 (Y) 和 X 变量。不知道如何设置。我是编码新手,需要一些我似乎无法从 Pandas 文档中理解的指导。我希望将 Target 作为“Bad Indicator”,将“X”作为所有其他列。import numpy as npfrom scipy import statsimport matplotlib.pyplot as pltimport pandas as pdproject = pd.read_csv('c:/users/Brandon Thomas/Project.csv')project=pd.DataFrame(project)df = pd.DataFrame(project.data, columns = project.feature_names)df["Bad Indicator"] = x.targetX = df.drop("Bad Indicator",axis=1) #Feature Matrixy = df["Bad Indicator"] #Target Variabledf.head()AttributeError Traceback (last recent call last) in 1 # Build dataframe ----> 2 df = pd.DataFrame(project.data, columns = project.feature_names) 3 df["Bad Indicator"] = x.target 4 X = df.drop("Bad Indicator",axis=1) #Feature Matrix 5 y = df["Bad Indicator"] #目标变量~\Anaconda3\lib\site-packages\pandas\core\generic.py in __getattr__(self, name) 5065 if self._info_axis._can_hold_identifiers_and_holds_name(name): 5066 return self[name]-> 5067 return object.__getattribute__(self, name) 5068 5069 def __setattr__(self, name, value):AttributeError: 'DataFrame' object has no attribute 'data'
1 回答

肥皂起泡泡
TA贡献1829条经验 获得超6个赞
在上面的代码中,您创建了一个数据框 3 次。一次与pd.read_csv,一次与project = pd.DataFrame(project),再一次与与df = pd.DataFrame(...)。默认情况下,pd.read_csv对象将是一个数据框。
我已经删除了当前不必要的导入,例如 numpy、scipy 和 matplotlib。如果您以后需要它们,可以将它们添加回来。要设置 Y 和 X,您需要做的就是:
import pandas as pd
df = pd.read_csv('c:/users/Brandon Thomas/Project.csv') # this will automatically name your columns if your csv has headers
#if your csv does not have headers:
df.columns = ['Bad Indicator', 'ColumnName1', 'ColumnName2',..]
X = df.drop("Bad Indicator",axis=1) #Feature Matrix
Y = df["Bad Indicator"] #Target Variable
df.head()
如果您的 csv 确实有标题,请删除该df.columns行。
添加回答
举报
0/150
提交
取消