线性回归笔记1-4
matplotlib的scatter功能:
plt.scatter(x, y, s=sizes, c=colors, cmap='viridis', alpha=0.6, marker='o', linewidths=2, edgecolors='k', label='Random Data')
sizes = np.random.rand(2) * 300 # 生成两个0到300之间的随机数作为大小
sizes = np.array([50, 200]) # 第一个点大小为50,第二个点大小为200
sizes = np.array([100, 100]) # 两个点都有大小为100
最后plt.scatter(s=sizes)
numpy的shape:
1.x_train = np.array([[1.0], [2.0]])
二维数组,.shape返回(2,1)
x_train = np.array([1.0, 2.0])
一维数组,.shape返回(2,)2.array_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(array_2d.shape[0]) # 输出: 2,表示有2行
# pandas DataFrame示例
df = pd.DataFrame({
'A': [1, 2, 3],
'B': [4, 5, 6]
})
print(df.shape[0]) # 输出: 3,表示有3行
w = copy.deepcopy(w_in):
深拷贝与浅拷贝(
copy.copy(obj)
)的区别在于:
- 浅拷贝只复制对象本身和它的直接引用,而不复制它所引用的其他对象。这意味着如果原始对象包含对其他对象的引用,那么浅拷贝和原始对象将共享这些引用的对象。
- 深拷贝则递归地复制对象及其所有子对象,确保新对象和原始对象之间没有任何共享的子对象。
print(f"Iteration {i:4}: Cost {J_history[-1]:0.2e} ",
f"dj_dw: {dj_dw: 0.3e}, dj_db: {dj_db: 0.3e} ",
f"w: {w: 0.3e}, b:{b: 0.5e}"):
{i:4}
意味着整数i
将占据至少4个字符的宽度,而{J_history[-1]:0.2e}
则意味着科学计数法表示的成本值将保留两位小数。