逻辑回归:
1、data.drop_duplicates(inplace = True) # 去除重复项
data.index = range(data.shape[0]) # 删除之后,要恢复索引,否则默认行数还是不变,只是将内容删除
2、# 查看每一列的缺失情况
data.isnull().sum() / data.shape[0]《===等价===》data.isnull().mean()
3、# 显示这一列所有的取值
data.loc[:,"NumberOfTimes90DaysLate"].value_counts()
4、# 显示这一列所有的取值
data.loc[:,"NumberOfTimes90DaysLate"].value_counts()
5、# 打印时可参考下面的格式,要填入的内容在中括号中
print('样本个数:{};1占{:.2%}; 0 占{:.2%}'.format(n_sample,n_1_sample / n_sample,n_0_sample / n_sample))
6、#按照等频对需要分箱的列进行分箱
# dataframe['列名'] 当这个列存在的时候,就是索引;当这个列不存在的时候,DataFrame会自动生成叫这个列名的一个新的列
model_data['qcut'],updown =pd.qcut(model_data['age'],retbins = True,q = 20)
pd.qcut ,基于分位数的分箱函数,本质是将连续型变量离散化只能够处理一维数据。返回箱子的上限和下限参数 q :要分箱的个数参数 retbins=True 来要求同时返回结构为索引为样本索引,元素为分到的箱子的 Series现在返回两个值:每个样本属于哪个箱子,以及所有箱子的上限和下限# 在这里时让 model_data 新添加一列叫做 “ 分箱 ” ,这一列其实就是每个样本所对应的箱子
7、#使用数据透视表的功能groupby
model_data[model_data['SeriousDlqin2yrs']== 1].groupby(by = 'qcut').count()['SeriousDlqin2yrs']
8、# 使用zip可以实现将列表变成元组
如:[*zip([1,2,3],['a','b','c'])]
结果显示为:[(1,'a'),(2,'b'),(3,'c')]
9、# 改变行列
a = np.random.random((2,4))
a.reshape(4,2) #《=====等价于=====》np.reshape(a,(4,2))
SVM:
1、# 对数据进行标准化,将数据转化为在(0,1)之间的正态分布
from sklearn.preprocessing import StandardScaler
X = StandardScaler().fit_transform(X)
2、np.unique(y) # 表示去重,查看有几个值
3、# 使用降维
from sklearn.decomposition import PCAX_dr = PCA(2).fit_transform(X)
1、查看数据类型
df[''].dtype
2、字符串格式转时间类型
import datetime
data=datetime.datetime.stripttime(i,'%Y-%m-%d %H:%M:%S')