为了拯救我这健忘的脑子,不断记录遇到的好用的语句
1、# 因为isnull()只支持DataFrame的形式,所以,在查看有没有空值的时候,先将数据变成表的形式,然后加和
# 因为布尔型,true是1,false是0,通过加和可以判断是否有无0
pd.DataFrame(data).isnull().sum()
2、[*zip(['X_full','X_missing_mean','X_missing_0','X_missing_reg'],mse)] # 用列表把它打开
3、list.index([object]) 返回这个object在列表list中的索引
如:[*range(65,75)][score1.index(max(score1))] # 意思是打印出65到75之间最大值所对应的最大的索引
4、复制原有数据
data = data.copy()
5、le.classes_ # 属性.classes_查看标签中究竟有多少类别
OrdinalEncoder().fit(data_.iloc[:,1:-1]).categories_ # 接口categories_对应LabelEncoder的接口classes_,一模一样的功能
6、查看一列中有哪些唯一值,如:
data_2['Survived'].unique()
7、将一维转为二维,如:
y = data_2.iloc[:,-1].values.reshape(-1,1)
将多维变为一维,如:
est.fit_transform(X).ravel()
8、查看数据的结构
data.shape
9、np.arange(最小值,最大值,步长)
如:np.arange(0,10,1) # 生成的数是从0到10之间,步长为1的数
np.linespace(最小值,最大值,数量)
如:np.linespace(0,10,20) # 生成的数是0到10之间,取20个数
10、#属性explained_variance_,查看降维后每个新特征向量上所带的信息量大小(可解释性方差的大小)
如:data . explained_variance_# 属性 explained_variance_ratio ,查看降维后每个新特征向量所占的信息量占原始数据总信息量的百分比# 又叫做可解释方差贡献率如:pca . explained_variance_ratio_
11、# np.cumsum()可实现对数据的累加
如:import numpy as npnp.cumsum(pca_line.explained_variance_ratio_)
12、创建子图画布。一个长10,宽4的画布,有四行五列个子图
fig,ax = plt.subplots(2,10,figsize =(10,4) #
,subplot_kw = {'xticks':[],'yticks':[]}) # 不要显示坐标轴一个形象的比喻:fig是生成了这么多张纸,ax是生成了这么多的对象
13、# 可以实现对数据进行去重
set(digits.target.tolist())
14、主要的数学计算方法
(1)、可用于Series和DataFrame
df = pd.DataFrame({'key1':np.arange(10),
'key2':np.random.rand(10)*10})
print(df)
print('-----')print(df.count(),'→ count统计非Na值的数量\n')
print(df.min(),'→ min统计最小值\n',df['key2'].max(),'→ max统计最大值\n')
print(df.quantile(q=0.75),'→ quantile统计分位数,参数q确定位置\n')
print(df.sum(),'→ sum求和\n')
print(df.mean(),'→ mean求平均值\n')
print(df.median(),'→ median求算数中位数,50%分位数\n')
print(df.std(),'\n',df.var(),'→ std,var分别求标准差,方差\n')
print(df.skew(),'→ skew样本的偏度\n')
print(df.kurt(),'→ kurt样本的峰度\n')(2)、可用于Series和DataFrame
df['key1_s'] = df['key1'].cumsum()
df['key2_s'] = df['key2'].cumsum()
print(df,'→ cumsum样本的累计和\n')df['key1_p'] = df['key1'].cumprod()
df['key2_p'] = df['key2'].cumprod()
print(df,'→ cumprod样本的累计积\n')print(df.cummax(),'\n',df.cummin(),'→ cummax,cummin分别求累计最大值,累计最小值\n')