numpy—np.tile实现向量重复拼接矩阵

当进行数据计算时候,就知道有多么方便了

向量拼接矩阵写法:np.tile(向量,目标矩阵行数).reshape(-1,向量列数)

import numpy as np

a = np.array([1,2,3,4])
res_a = np.tile(a,10).reshape(-1,4)
print(res_a)

运算结果:
在这里插入图片描述望指点

n11_list = np.array([0, 55, 60, 65, 70, 75, 80, 85, 90]) # 共9个n11值 a_list = np.array([0, 18, 22, 26, 30, 34]) # 共6个a值(单位:mm) # 表1中的q11数据(按行排列,每行对应一个n11,每列对应一个a) q11_table = np.array([ [0.000, 0.687, 0.815, 0.934, 1.189, 1.106], # n11=0 [0.000, 0.646, 0.792, 0.886, 1.006, 1.075], # n11=55 [0.000, 0.642, 0.772, 0.900, 0.990, 1.073], # n11=60 [0.000, 0.628, 0.764, 0.895, 0.988, 1.075], # n11=65 [0.000, 0.617, 0.753, 0.897, 0.992, 1.075], # n11=70 [0.000, 0.592, 0.733, 0.868, 0.988, 1.085], # n11=75 [0.000, 0.582, 0.720, 0.859, 0.974, 1.089], # n11=80 [0.000, 0.565, 0.710, 0.846, 0.969, 1.071], # n11=85 [0.000, 0.549, 0.694, 0.837, 0.965, 1.060], # n11=90 ]) # 构建输入矩阵p和输出向量t p = [] t = [] for i in range(len(n11_list)): n11 = n11_list[i] # 输入矩阵p: 第一列是a值,第二列是当前n11重复6次 a_values = np.tile(a_list, (1)).reshape(-1, 1) # 转换为列向量 n11_values = np.full((len(a_list), 1), n11) p_block = np.hstack((a_values, n11_values)) p.append(p_block) # 输出向量t: 按行展开q11_table t.append(q11_table[i, :]) p = np.vstack(p).T # 转换为(2, 54)的输入矩阵 t = np.hstack(t).reshape(-1, 1) # 转换为(54, 1)的输出向量 # 数据归一化(建议步骤) from sklearn.preprocessing import StandardScaler scaler_p = StandardScaler() p_scaled = scaler_p.fit_transform(p.T).T # 输入需要转置为(54, 2)再归一化 scaler_t = StandardScaler() t_scaled = scaler_t.fit_transform(t)是什么意思
最新发布
03-12
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

滴滴da

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值