gpt4 book ai didi

python - 通过 Python 创建 X 输入矩阵和 y 输出向量

转载 作者:行者123 更新时间:2023-11-30 09:11:18 25 4
gpt4 key购买 nike

如果我有一个有 5 列和 10 行(即 10 个观测值)的数据集,我希望 X 是代表前四列的 10 x 4 输入矩阵,y 是代表前四列的 10 x 1 输出矩阵我的数据集中的最后一列,我将如何在 python 上编码? 我希望我的 X 矩阵包含以下列:cty_pop2000、countyfipscode、county_name 和 statename。虽然我希望我的 y 输出向量是基尼列。我该如何在 Python 上编写这个代码?如果这个问题很微不足道,我很抱歉,我是Python新手。我试过sklearn但他们使用简单的数组作为 X 输入和 y 输出。因此,我不知道如何编码我的 X 矩阵和 y 向量

我尝试使用以下代码对其进行编码:

import pandas as pd

df = pd.read_csv('file_name.csv')
X = df.iloc[[0:3]]
y = df['gini']

数据集是一个 csv 文件,包含以下内容:

cty_pop2000 countyfipscode  county_name statename   gini
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381
43671 1001 Autauga Alabama 0.381

最佳答案

您可以将最后一列复制到向量并将其从原始数据框中删除。

import pandas as pd

df = pd.read_csv('file_name.csv')
y = df[['gini']]
X = df.drop(['gini'])

或者您可以简单地切掉“基尼”列而不删除

import pandas as pd

df = pd.read_csv('file_name.csv')
y = df[['gini']]
X = df[df.columns.difference(['gini'])]

您还可以使用列索引来分割列:

import pandas as pd

df = pd.read_csv('file_name.csv')
y = df[[-1]]
X = df[df.columns[0:-1]]

所有这些方法都会给你 y

>> y
gini
0 0.381
1 0.381
2 0.381
3 0.381
4 0.381
5 0.381
6 0.381
7 0.381
8 0.381

对于 X

>> X 
cty_pop2000 countyfipscode county_name statename
0 43671 1001 Autauga Alabama
1 43671 1001 Autauga Alabama
2 43671 1001 Autauga Alabama
3 43671 1001 Autauga Alabama
4 43671 1001 Autauga Alabama
5 43671 1001 Autauga Alabama
6 43671 1001 Autauga Alabama
7 43671 1001 Autauga Alabama
8 43671 1001 Autauga Alabama

关于python - 通过 Python 创建 X 输入矩阵和 y 输出向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36588851/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com