python 列表维度_将列表转换为特定维度的numpy数组

我正在研究多项式训练测试拟合问题,想把一个列表对象转换成一个numpy数组(4100)。(即4行,100列)

我有以下代码:

from sklearn.linear_model import LinearRegression

from sklearn.preprocessing import PolynomialFeatures

from numpy import array

np.random.seed(0)

n = 15

x = np.linspace(0,10,n) + np.random.randn(n)/5

y = np.sin(x)+x/6 + np.random.randn(n)/10

X_train, X_test, y_train, y_test = train_test_split(x, y, random_state=0)

results = []

pred_data = np.linspace(0,10,100)

degree = [1,3,6,9]

y_train1 = y_train.reshape(-1,1)

for i in degree:

poly = PolynomialFeatures(degree=i)

pred_poly1 = poly.fit_transform(pred_data[:,np.newaxis])

X_F1_poly = poly.fit_transform(X_train[:,np.newaxis])

linreg = LinearRegression().fit(X_F1_poly, y_train1)

pred = linreg.predict(pred_poly1)

results.append(pred)

dataArray = np.array(results).reshape(4, 100)

return dataArray

代码运行良好并返回一个数组(4100),但是输出看起来像是100行4列的内容,一旦我从np.数组函数,输出的维数变为(4100,1)。(我为我的无知道歉,1 in(4100,1)代表什么?)在

我想我对清单的理解有点问题,我现在还没弄明白。有谁能帮我指出代码中的错误,或者建议如何将输出数组转换成所需的(4100)格式?在

谢谢。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值