numpy
import numpy as np
#创建数组
# array = np.array([1,2,3,4,5])
# array = np.arange(0,10,1)
# array = np.zeros((2,3))
# array = np.zeros_like(array)
# np.linspace 确定性序列生成 在指定区间内生成等间隔的数值序列
# np.random.normal 随机数生成 从正态分布(高斯分布)中抽取随机样本
# array = np.linspace(0,10,100,dtype='float32')
# 总结,一个是随机的,一个是等间隔的,linspace类似于 0-1等差分成N份
# array = np.random.normal(0,1,50)
array = np.array([1,2,3,4,5,6,7,8])
array = array.reshape(2,4)#变维.
print(array.ravel())#拉成一维
print(array,array.shape,array.dtype,array.size)
Matplotlib
pandas
import pandas as pd
data = {
'姓名': ['小明', '小红', '小刚', '小美', '小亮'],
'语文': [88, 92, 95, 70, 85],
'数学': [90, 85, 98, 65, 80],
'英语': [93, 89, 90, 60, 88],
'性别': ['男', '女', '男', '女', '男']
}
df = pd.DataFrame(data)
print(df)
#查看前两行数据
print(df.iloc[2])
#查看数学这一列的所有数据
print(df.iloc[:,2])
#筛选出数学成绩大于90的学生
mask = df.iloc[:,2]>90
print(df[mask])
#计算美一科的平均分
print(f"语文平均分:{df.iloc[:,1].mean()}")
print(f"数学平均分:{df.iloc[:,2].mean()}")
print(f"英语平均分:{df.iloc[:,3].mean()}")
#添加总分这一列,是语文,英语,数学的和
df['总分'] = df.iloc[:,1] + df.iloc[:,2] + df.iloc[:,3]
print(df)
#把所有的英语加五分
df.iloc[:,3] = df.iloc[:,3] + 5
#筛选性别为女且语文大于80的同学
mask = (df.iloc[:,4] == '女') & (df.iloc[:,1] > 80)
print(df[mask])
#删除性别这一列
df = df.drop(columns='性别',axis=0)
print(df)
标准化(均值移除)
让数据又相同的标准,更容易对比,平均值变成0 标准差变成1 不同单位的书可以在一起训练模型,比如下面的身高和体重
import pandas as pd
from sklearn.preprocessing import StandardScaler
data = pd.DataFrame({
'姓名': ['小明', '小红', '小刚'],
'身高': [160, 170, 180],
'体重': [50, 65, 80]
})
print(data)
scaler = StandardScaler()
num_data = data[['身高','体重']]
result = scaler.fit_transform(num_data)
print(result)
new_data = pd.DataFrame(result,columns=['标准化身高','标准化体重'])
aaa = pd.concat([data['姓名'],new_data],axis=1)
print(aaa)
范围缩放-归一化
scaler = MinMaxScaler()
num_data = data[['身高','体重']]
result = scaler.fit_transform(num_data)
print(result)
new_data = pd.DataFrame(result,columns=['归一化身高','归一化体重'])
aaa = pd.concat([data['姓名'],new_data],axis=1)
print(aaa)
二值化
独热编码
线性回归-梯度下降
多项式回归
逻辑回归
决策树分类
0629复习
voowviiydmntwfwtinsvhxslrfqqok
gprougpwflyfldpgvxytfiwuzgsyds
ketkkqllhqnlgsgufismwxxnykitjq