如何从 CSV 文件创建 Target(y) 和 X 变量
How to Create Target(y) and X variables from CSV file
我正在读取 CSV 文件,出于建模目的,我需要创建目标 (Y) 和 X 变量。不知道如何设置。我是编码新手,需要一些我似乎无法从 Pandas 文档中理解的指导。我希望 Target 为 'Bad Indicator','X' 为所有其他列。
import numpy as np
from scipy import stats
import matplotlib.pyplot as plt
import pandas as pd
project = 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.target
X = df.drop("Bad Indicator",axis=1) #Feature Matrix
y = df["Bad Indicator"] #Target Variable
df.head()
AttributeError Traceback(最近调用
最后的)
在
1 # 构建数据框
----> 2 df = pd.DataFrame(project.data, 列 = project.feature_names)
3 df["Bad Indicator"] = x.target
4 X = df.drop("Bad Indicator",axis=1) #特征矩阵
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'
在上面的代码中,您分别创建了 3 次数据框。一次 pd.read_csv
,一次 project = pd.DataFrame(project)
,再一次 df = pd.DataFrame(...)
。默认情况下,pd.read_csv
object 将是一个数据帧。
我已经删除了当前不需要的导入,例如 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 确实有 headers,请删除 df.columns
行。
我正在读取 CSV 文件,出于建模目的,我需要创建目标 (Y) 和 X 变量。不知道如何设置。我是编码新手,需要一些我似乎无法从 Pandas 文档中理解的指导。我希望 Target 为 'Bad Indicator','X' 为所有其他列。
import numpy as np
from scipy import stats
import matplotlib.pyplot as plt
import pandas as pd
project = 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.target
X = df.drop("Bad Indicator",axis=1) #Feature Matrix
y = df["Bad Indicator"] #Target Variable
df.head()
AttributeError Traceback(最近调用 最后的) 在 1 # 构建数据框 ----> 2 df = pd.DataFrame(project.data, 列 = project.feature_names) 3 df["Bad Indicator"] = x.target 4 X = df.drop("Bad Indicator",axis=1) #特征矩阵 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'
在上面的代码中,您分别创建了 3 次数据框。一次 pd.read_csv
,一次 project = pd.DataFrame(project)
,再一次 df = pd.DataFrame(...)
。默认情况下,pd.read_csv
object 将是一个数据帧。
我已经删除了当前不需要的导入,例如 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 确实有 headers,请删除 df.columns
行。