• 下列语句可以输出代码默认的保存路径:

import os
print(os.path.abspath('.'))

  • 常用的快捷键是:

Ctrl + Enter: 执行单元格代码

Shift + Enter: 执行单元格代码并且移动到下一个单元格

Alt + Enter: 执行单元格代码,新建并移动到下一个单元格

  • 文件默认存储路径怎么改?
  • 第一步:找到配置文件

菜单中打开Anaconda Prompt

输入命令 jupyter notebook --generate-config

根据上面运行处的路径打开C:\Users\HS\.jupyter\jupyter_notebook_config.py文件

  • 第二步:更改配置

找到 #c.NotebookApp.notebook_dir = '',去掉该行前面的“#”;在打算存放文件的位置先新建一个文件夹(很重要,最好是英文的),然后将新的路径设置在单引号中,保存配置文件

重新启动Jupyte Notebook即可

  • pip安装sklearn

pip install -U scikit-learn

它就会帮你下载新的scipy、numpy、scikit-learn,并且卸载原有的。

  • 找出content不为空的数据

df[~df['content'].isna()]

  • pip安装pandas
  • pip3 install pandas 安装,注意是pip3
  • pip show pandas 查看当前环境是否有pandas

使用镜像安装pandas:

pip install pandas -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com/pypi/simple

#注:其中https://mirrors.aliyun.com/pypi/simple/ 是阿里云网址
–trusted-host=mirrors.aliyun.com/pypi/simple 表示信任此网址

如果不行,升级pip,命令是:python -m pip install --upgrads pip

  • pip安装numpy()

使用豆瓣的镜像

pip install numpy -i "https://pypi.doubanio.com/simple/"

  • 通过Anaconda安装Graphviz

先安装graphviz程序才行,参考博客:解决failed to execute [‘dot’, ‘-Tsvg’], make sure the Graphviz executables are on your systems_坤斤拷的博客-CSDN博客

在终端窗口一次输入:

conda install graphviz
pip install graphviz

添加环境变量

找到Graphviz的安装路径,然后添加到环境变量中即可。我的安装路径是
C:\Users\linxid\Anaconda3\Library\bin\graphviz

  • Jupyter notebook查看函数(方法)用法快捷键

光标直接放上面再按快捷键Shift+Tab就可以

  • python中assert用法 

assert 3 == 2, 'x_timeseries must be shape of (time_step, features)'

  • Jupyter notebook快捷键总结

tab键,整个块就会缩进

按下 shift + tab 就会反向缩进

1. Jupyter Notebook有两种mode

  • Enter:进入edit模式
  • Esc:进入command模式

2. Command命令快捷键:

  • A:在上方增加一个cell
  • B:在下方增加一个cell
  • X:剪切该cell
  • C:复制该cell
  • V:在该cell下方粘贴复制的cell
  • Shift-V:在该cell上方粘贴复制的cell
  • L:隐藏、显示当前cell的代码行号
  • shift-L:隐藏/显示所有cell的代码行号
  • O:隐藏该cell的output
  • DD:删除这个cell
  • Z:撤销删除操作
  • Y:转为code模式
  • M:转为markdown模式
  • R:转为raw模式
  • H:展示快捷键帮助
  • Shift-Enter:运行本单元,选中下个单元 新单元默认为command模式
  • Ctrl-Enter 运行本单元
  • Alt-Enter 运行本单元,在其下插入新单元 新单元默认为edit模式
  • OO:重启当前kernal
  • II:打断当前kernal的运行
  • shift+上/下:向上/下选中多个代码块
  • 上/下:向上/下选中代码块
  • F:查找替换

3. Edit命令快捷键:

  • Tab:代码补全
  • ctrl]或Tab:缩进(向右)
  • ctrl[或shift-Tab:反缩进(向左)
  • ctrl A:全选
  • ctrl D:删除整行
  • ctrl Z:撤销

Jupyter Notebook里command模式快捷键H,查看所有快捷键

  • Jupyter Notebook路径输入方式

  • 反斜杠:/
  • 双斜杠:\\
  • 使用短路径
  • 不要使用粘贴路径, 手工录入完整路径

注意:如果是绝对路径的写法:D:\\download\\train.csv,千万别掉了D后面的":",切记。

  • %matplotlib inline写法含义

使用%matplotlib命令可以将matplotlib的图表直接嵌入到Notebook之中,或者使用指定的界面库显示图表,它有一个参数指定matplotlib图表的显示方式。inline表示将图表嵌入到Notebook中。Python提供了许多魔法命令,使得在IPython环境中的操作更加得心应手。魔法命令都以%或者%%开头,以%开头的成为行命令,%%开头的称为单元命令。行命令只对命令所在的行有效,而单元命令则必须出现在单元的第一行,对整个单元的代码进行处理。博客

  • 安装matplotlib命令

python -m pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple

  • 安装xgboost
pip install xgboost -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 安装lightgbm

pip install lightgbm

LightGBM是个快速的,分布式的,高性能的基于决策树算法的梯度提升框架(实现 GBDT 算法的框架,支持高效率的并行训练)。可用于排序,分类,回归以及很多其他的机器学习任务中。在竞赛题中,我们知道XGBoost算法非常热门,它是一种优秀的拉动框架,但是在使用过程中,其训练耗时很长,内存占用比较大。在2017年年1月微软在GitHub的上开源了一个新的升压工具--LightGBM。在不降低准确率的前提下,速度提升了10倍左右,占用内存下降了3倍左右。具体细节:参考博客。

  • 安装catboost

pip install catboost -i https://pypi.tuna.tsinghua.edu.cn/simple

一个超级简单并且又极其实用的boosting算法包Catboost,据开发者所说这一boosting算法是超越Lightgbm和XGBoost的又一个神器。具体细节:参考博客。

  • python的Tqdm模块

pip install tqdm

导入:from tqdm import tqdm

  • 改变jupyter notebook的主题背景颜色

安装jupter notebook的自定义主题

pip install --upgrade jupyterthemes

查看安装的这几个自定义主题的名称

jt -l

选择一个主题名换皮肤

jt -t 主题名 -T -N

Tqdm 是一个快速,可扩展的Python进度条,可以在 python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator)。参考博客1、参考博客2

  • python的cv2(OpenCV,opencv-python)模块

pip3 install opencv-python

使用cv2.imwrite(image_path, image)保存图片到指定路径,千万注意路径中不能含有中文。

  • pip安装seaborn

pip install seaborn

关于使用seaborn库对数据集进行关联分析,这个库讲的比较。

官网,也有参数介绍。

关于参数讲的比较好,博客Link

plt.figure(figsize=(10, 10))--->这句话必须放在上面一行
sns.heatmap(train_df.corr(), annot=True, fmt=".2f",linewidths='5')

  • 解决打印不能显示dataframe的全部数据,中间的数据用省略号表示。

#显示所有列
pd.set_option('display.max_columns', None)
#显示所有行
pd.set_option('display.max_rows',None)

#设置value的显示长度为100,默认为50
# pd.set_option('display.max_colwidth',10)
pd.set_option('display.max_rows',20)

  • pandas统计属性个数 

train_df['indoorAtmo'].value_counts().sort_values(ascending=False)

tensorflow2.0cpu版本的安装

我的python版本是3.7.7

第一步;安装tensorflow

pip install tensorflow-cpu == 2.2.0 -i https://pypi.douban.com/simple/

第二步:安装Visual C++ 可再发行软件包

地址:最新受支持的 Visual C++ 可再发行程序包下载 | Microsoft Learn

数据预处理:

当测试或实际应用需要设置空值缺失值时可以用None 、np.nan 、pd.NaT

处理空值异常值有两种办法,一种是将空值行/列删除,一种是将替代空值

  • 如何对空值计数

a=df.isnull()
b=a[a==True]
b.count()#用来计算nan数量

  • 删除的方法

将nan的行全部删除
df.dropna()
print(‘dropna’,df.dropna())#将带nan的行删除 axis=1删除列

  • 填充

df.fillna(10) 自动按10填充
df.Age.fillna(df.Age.mean(),inplace = True) 用平均值来填充                                                                print(‘ffill’,df.fillna(method=‘ffill’))#上面的值覆盖下面的值
print(‘dfill’,df.fillna(method=‘bfill’))#下面的值覆盖上面的值
print(‘replace’,df.replace({np.nan:‘aa’}))#对应的填充替换

细节参考博客:Pandas详解十一之Fillna填充缺失数据_yungeisme的博客-CSDN博客_fillna用法

  • reset_index()主要用于重置索引

博客

  • pandas.cut(df,20, duplicates='drop')方法

用来把一组数据分割成离散的区间。比如有一组年龄数据,可以使用pandas.cut将年龄数据分割成不同的年龄段并打上标签。作用在一个属性上,可以使一个连续属性分割成20分,并将每行数据都对应到这个区间上。

  • Numpy知识点补充:np.vstack()&np.hstack()

np.vstack:按垂直方向(行顺序)堆叠数组构成一个新的数组

np.hstack:按水平方向(列顺序)堆叠数组构成一个新的数组

  • DataFrame多条件筛选

df[(df.c1==1) & (df.c2==1)],注意中间是&,而不是and,这就很奇怪。

  • DataFrame去掉某一列

data_df = data_df.drop(['temperature'],axis=1)

  • DataFrame添加一列’c‘

data['c'] = '0'

  • DataFrame中查询含有空值的item

df[df.isnull().T.any()]

  • DataFrame中合并2个dataframe

datas_df = pd.concat([haveTem_train_df,notTem_train_df],axis = 0)

  • 如何条件遍历筛选numpy的ndarray数据

法一(注意np.where(x>4)]返回的是符合的元素的index):

  1. import numpy as np

  2. x=np.arange(1,10,1)

  3. x=x[np.where(x>4)]

  4. print(x)

法二:

  1. import numpy as np

  2. x=np.arange(1,10,1)

  3. x=x[x>4]

  4. print(x)

  • 缺失值处理

这篇博客写的比较好。

  • opencv显示图片
#显示该张图片
img = cv2.imread("D:/me.jpg")
cv2.imshow("mnist",img)#一定要延时,否则不能正常显示
cv2.waitKey()
cv2.destroyAllWindows()
  • 看Tensorflow的版本

tf.__version__

  • pd.read_csv()

pd.read_csv()方法中header参数,默认为0,标签为0(即第1行)的行为表头。若设置为-1,则无表头。

  • 查看jupyter notebook保存的文件在哪 

jupyter notebook --generate-config

  • 查看DataFrame数据的信息:

df_info()

  • 画出箱形图:

p=pd.DataFrame(train_df["indoorAtmo"]).boxplot(return_type='dict')
x=p['fliers'][0].get_xdata()
y=p['fliers'][0].get_ydata()
y.sort()
for i in range(len(x)):
    if i>0:
        plt.annotate(y[i],xy=(x[i],y[i]),xytext=(x[i]+0.05-0.8/(y[i]-y[i-1]),y[i]))
    else:
        plt.annotate(y[i],xy=(x[i],y[i]),xytext=(x[i]+0.08,y[i]))
plt.show()

  • pandas中在使用groupby()后

如何打印每一个分组中有多少数据:

pre_train_df.groupby(["month","day","hour"]).count()

打印索引:pre_train_df.groupby(["month","day","hour"]).count().index

打印每个索引对应的数据:pre_train_df.groupby(["month","day","hour"]).count().values

#按A列进行分组,得到分组后的(没有重复行)groupby对象
df_group= df.groupby("A")#得到分组的总长度
lenth = len(df_group.count())#得到分组后ID(行名称)对应的数量
id_name = df_group.size().values#得到分组后的ID(行名称)
id_num = df_group.size().index#迭代取key和valuefor i, j in df_group:print(i,j)#根据组的key取值df_group.get_group("xxxx")#判断是否有某个分组key"xxxx" in df_group.size().index

进行groupby()后agg({'mean'})、apply()处理与transform('mean')处理的区别?

1. agg():

调用时要指定字段,apply默认传入整个Dataframe

2. apply():

参数可以是自定义函数,包括简单的求和函数以及复制的特征间的差值函数等。apply不能直接使用python的内置函数,比如sum、max、min。

2. transform():

参数不能是自定义的特征交互函数,因为transform是针对每一元素(即每一列特征操作)进行计算。使用transform要注意:

  1. 它只能对每一列进行计算,所以在groupby之后,transform之前是要指定操作的列,这点与apply有很大的不同
  2. 由于是对每一列进行计算,所以方法通用性性比apply就局限了很多,例如,只能求列的最大值,最小值,均值,方差,分箱等操作。

agg()与transform()的区别:

transform必须返回与组合相同长度的序列,而agg()返回的长度等于分组个数。

  • 将DataFrame/Series转换成ndarray类型:

直接(DataFrame/Series).values

  • reset_index()

reset_index()可以给DataFrame重新设置索引。

  • pandas的DataFrame的append方法:

DataFrame.append(other, ignore_index=False, verify_integrity=False, sort=None)

功能说明:向dataframe对象中添加新的行,如果添加的列名不在dataframe对象中,将会被当作新的列进行添加

other:DataFrame、series、dict、list这样的数据结构
ignore_index:默认值为False,如果为True则不使用index标签
verify_integrity :默认值为False,如果为True当创建相同的index时会抛出ValueError的异常
sort:boolean,默认是None,该属性在pandas的0.23.0的版本才存在。

  • dataframe的merge操作

dataframe的merge是按照两个dataframe共有的column进行连接,两个dataframe必须具有同名的column。

具体细节参照:dataframe的merge操作_lyzkks的博客-CSDN博客_dataframe merge

  • dataframe选择多列:

data_df[["dt","hour"]]

  • 如何拿到DataFrame的索引:

df.index

  • 合并2个ndarray

numpy.vstack()函数与numpy.hstack()函数

  • Python函数中参数前带*是什么意思?

参数前面加上* 号 ,意味着参数的个数不止一个,另外带一个星号(*)参数的函数传入的参数存储为一个元组(tuple),带两个(*)号则是表示字典(dict),简单来说,将传过来的参数分别用元祖、字典存储起来了。

def t1(param1, *param2):print(param1)print(param2)
t1(1,2,3,4)# 1
# (2,3,4)
def t2(param1, **param2):print param1print param2
t2(1,a=2,b=3)# 1
# {a:2, b:3}
  • python中变量e前面加星号,即*e:

列表或元组前面加星号作用是将列表解开成两个独立的参数,传入函数:

def add(x,y):return x+y
b = [1,4]
e = (2,3)
add(*e)
add(*b)
>>> 5
>>> 5

字典前面加两个星号,是将字典的值解开成独立的元素作为形参:

def add(x,y):return x+y
d= {'a' : 2, 'b' : 3}
add(**data)
>>> 5
  • tf.control_dependencies的作用:
x_plus_1 = tf.assign_add(x, 1)
""
control_dependencies的意义是,在执行with包含的内容(在这里就是 y = x)前
先执行control_dependencies中的内容(在这里就是 x_plus_1)
""
with tf.control_dependencies([x_plus_1]):y = x
  • print(y.eval()):

相当于sess.run(y)

  • tf.assign_add():

#返回一个op,表示给变量x加1的操作 x_plus_1 = tf.assign_add(x, 1)

  • TensorFlow笔记—— tf.group(), tf.tuple 和 tf.identity()

博客:TensorFlow笔记——(2) tf.group(), tf.tuple 和 tf.identity()_Lavi_qq_2910138025的博客-CSDN博客

  • tf.assign()用法:

我们知道w.assign(10)等价于w = w+10,但是W.assign(100) 并不会给W赋值,assign()是一个op,所以它返回一个op object,需要在Session中run这个op object,才会赋值给W.

  • Tensorflow保存模型、加载模型:

保存模型:

import tensorflow as tfsaver = tf.train.Saver()with tf.Session() as sess:#保存模型saver.save(sess,"net/my_net.ckpt")

会在当前目录/net下生成一些文件:

加载保存的模型:

import tensorflow as tfsaver = tf.train.Saver()with tf.Session() as sess:#保存模型saver.restore(sess,"net/my_net.ckpt")使用sess预测测试集
  • 安装requests包:

  • pip install requests
  • os.path.join用法:

os.path.join(inception_pretrain_model_dir,filename)---->拼接路径

  • requests.get()方法:

res = requests.get(url,headers=headers)  向网站发起请求,并获取响应对象,具体细节,参考博客:爬虫:requests.get爬虫模块参数 - 凌逆战 - 博客园

原始响应内容

在罕见的情况下,你可能想获取来自服务器的原始套接字响应,那么你可以访问 r.raw。 如果你确实想这么干,那请你确保在初始请求中设置了 stream=True。具体你可以这么做:

>>> r = requests.get('https://github.com/timeline.json', stream=True)>>> r.raw<requests.packages.urllib3.response.HTTPResponse object at 0x101194810>>>> r.raw.read(10)'\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x03'

但一般情况下,你应该以下面的模式将文本流保存到文件:

with open(filename, 'wb') as fd:for chunk in r.iter_content(chunk_size):fd.write(chunk)

使用 Response.iter_content 将会处理大量你直接使用 Response.raw 不得不处理的。 当流下载时,上面是优先推荐的获取内容方式。

  • tarfile.open().extractall()方法:

tarfile.open(filepath, ‘r:gz’).extractall(dest_directory),open返回一个tarfile对象,调用tarfile的extreactall方法将压缩文件解压到目标目录。

  • tf.gfile.FastGFile()

tf.gfile.FastGFile(path,decodestyle)
函数功能:实现对图片的读取。
函数参数:(1)path:图片所在路径 (2)decodestyle:图片的解码方式。(‘r’:UTF-8编码; ‘rb’:非UTF-8编码)

  • plt.figure():

plt.figure(1)是新建一个名叫 Figure1的画图窗口,plt.plot(x,c)是在画图窗口里具体绘制横轴为x 纵轴为c的曲线

import matplotlib.pyplot as plt
plt.figure("image1")
plt.hist(range(1,10))
plt.show()
plt.figure("image2")
plt.hist(range(1,10))
plt.show()

  • tf.Graph()函数

tf.Graph() 函数非常重要,主要体现在两个方面:

  1. 它可以通过tensorboard用图形化界面展示出来流程结构
  2. 它可以整合一段代码为一个整体存在于一个图中

参考博客:TensorFlow中tf.Graph()函数_Never-Giveup的博客-CSDN博客

其实 Graph_def是Graph的序列化表示。

  • 保存图结构

writer = tf.summaty.FileWriter(log_dir,sess.graph)

  • 打开tensorboard

loception_log是一个目录。

tensorboard --logdir=D:\GoogleNet\loception_log

  • with ... as 语句

博客:一文读懂 with ... as 语句的来龙去脉_liu志军的博客-CSDN博客

  • 数据预处理,Lag特征添加,滑动窗口的设计:

博客:https://www.jianshu.com/p/4ece90357020

  • 时间序列模型中平稳分布:

链接:https://v.youku.com/v_show/id_XNDU2MTczMTQwMA==

  • pandas统计特征
pds = pd.DataFrame([[1,2,3],[4,6,6],[7,8,9]])
pds

pds.mean(axis = 1)

  • statsmodels模块可以用于检测一个序列是否是平稳分布

pip install statsmodels

  • 查看一个分布是否为平稳分布:
#开始导入adfuller函数
from statsmodels.tsa.stattools import adfulleradfuller(train_df['temperature'].values,autolag="AIC")

结果如下:

  • 箱型图:
  • matplotlib显示一张图片:

plt.imshow(train_image[1])

  • python3 print不换行

python3中print函数中的参数end默认值为'\n',表示换行,给end赋值为空,就不会换行了,例如:

print (123,end=" " )
print (456,end=" ")

  • jupyter notebook中调用pip语句:

!pip *****

  • enumerate(可迭代对象)的用法:

  • IPython.display显示图片:
#导入库
import IPython.display as displaydisplay.display(display.Image("图片路径", width=100, height=100))

  • DataFrame类型的数据以csv格式的文件保存到磁盘上:

data.to_csv('E://data_for_tree.csv', index=0)

Pandas中的Series类型的数据可以调用plot直接绘画出来:

Train_data['power'].plot.hist()

  • sklearn 中preprocessing模块:

导入:from sklearn import preprocessing

1)标准化

链接:Python数据预处理(sklearn.preprocessing)—归一化(MinMaxScaler),标准化(StandardScaler),正则化(Normalizer, normalize) - Avatarx - 博客园

  • ndarray类型的.ravel()方法:

将多维数组转换为一维数组

  • python中%%timeit:

它会计算整个notebook中cell的执行时间

  • Seaborn库学习:

seaborn库中封装了我们常用的关于matplotlib库的一些配置信息,让我们很容易画出巧妙的图形。

import seaborn as sns
import matplotlib.pyplot as plt#设置图像显示的背景风格(有无框)
sns.set_style()
plt画图的代码#去掉上、右侧的坐标轴
sns.despine()

调色板:

图形使用的色板,默认为6种颜色。

#上面定义了画板,在图形绘画时设置画板
sns.boxplot(data=data.palette=sns.color_palette("his",8))

his_palette()函数来控制颜色的亮度和饱和

  • l-亮度
  • s-饱和度

使用xkcd颜色来命名颜色

色调线性变换:

kde表示是否进行核密度估计:

#kde:是否进行核密度估计
#bin: 分成多少个柱状
#fit: 例如:stats.gamma,看数据分布的状况,当前的统计指标(简单来说:数据经过标准化显示的图形)

可视化变量两两之间的关系:

拟合散点图的回归直线:

参数hue:显示的是是否将对应的属性分开可视化

  • lgb使用模板:

lgb参数介绍文档:https://lightgbm.apachecn.org/#/docs/6

""
trn_x、val_x、train_x:为我们切分好DataFrame类型的数据集,不含有Lable那一列
trn_y、val_y、train_y:我们对label进行分片得到的series
""
train_matrix = lgb.Dataset(trn_x, label=trn_y)
valid_matrix = lgb.Dataset(val_x, label=val_y)
data_matrix = lgb.Dataset(train_x, label=train_y)params = {#弱分类器使用gbdt'boosting_type': 'gbdt',#损失函数使用均方误差'objective': 'mse',#为了防止过拟合,该节点的信息增益如果小于该值就不在往下分裂'min_child_weight': 5,#为了防止过拟合,设定的没棵树叶子节点数目'num_leaves': 2 ** 8,""feature_fraction 小于 1.0, LightGBM 将会在每次迭代中随机选择部分特征. 例如, 如果设置 为 0.8, 将会在每棵树训练之前选择 80% 的特征""         'feature_fraction': 0.5,#但是它将在不进行重采样的情况下随机选择部分数据'bagging_fraction': 0.5,#每几次迭代执行bagging'bagging_freq': 1,#学习率'learning_rate': 0.001,#种子,这个在比赛的时候可能会改'seed': 2020}#训练5000次,1000次早停
model = lgb.train(params, train_matrix, 50000, valid_sets=[train_matrix, valid_matrix], verbose_eval=500,early_stopping_rounds=1000)model2 = lgb.train(params, data_matrix, model.best_iteration)
#模型训练完成,开始预测label
val_pred = model.predict(val_x, num_iteration=model2.best_iteration).reshape(-1, 1)test_pred = model.predict(test_x, num_iteration=model2.best_iteration).reshape(-1, 1)
  • xgb使用模板:
#使用Xgboost自带的读取格式DMatrix(),并忽略np.nan数据
train_matrix = xgb.DMatrix(trn_x, label=trn_y, missing=np.nan)
valid_matrix = xgb.DMatrix(val_x, label=val_y, missing=np.nan)
test_matrix = xgb.DMatrix(test_x, missing=np.nan)
#mae 均方根误差
params = {'booster': 'gbtree','eval_metric': 'mae','min_child_weight': 5,'max_depth': 8,'subsample': 0.5,'colsample_bytree': 0.5,'eta': 0.001,'seed': 2020,'nthread': 36,'silent': True,}watchlist = [(train_matrix, 'train'), (valid_matrix, 'eval')]model = xgb.train(params, train_matrix, num_boost_round=50000, evals=watchlist, verbose_eval=500,early_stopping_rounds=1000)val_pred = model.predict(valid_matrix, ntree_limit=model.best_ntree_limit).reshape(-1, 1)test_pred = model.predict(test_matrix, ntree_limit=model.best_ntree_limit).reshape(-1, 1)
  • cat使用模板:
params = {'learning_rate': 0.001, 'depth': 5, 'l2_leaf_reg': 10, 'bootstrap_type': 'Bernoulli','od_type': 'Iter', 'od_wait': 50,'random_seed': 11, 'allow_writing_files': False}model = cat(iterations=20000, **params)model.fit(trn_x, trn_y, eval_set=(val_x, val_y),cat_features=[],use_best_model=True,verbose=500)val_pred = model.predict(val_x)
test_pred = model.predict(test_x)
  • SGDRegressor(随机梯度下降回归)使用模板:
params = {'loss': 'squared_loss','penalty': 'l2','alpha': 0.00001,'random_state': 2020,}model = SGDRegressor(**params)
model.fit(trn_x, trn_y)
val_pred = model.predict(val_x)
test_pred = model.predict(test_x)
  • ridge(岭回归)使用模板:
params = {'alpha': 1.0,'random_state': 2020,}model = Ridge(**params)
model.fit(trn_x, trn_y)
val_pred = model.predict(val_x)
test_pred = model.predict(test_x)

jupyter notebook使用心得相关推荐

  1. 太强了!这个 Jupyter notebook 离线工具可以用一辈子!

    作者:东哥起飞 出品:Python数据科学 VScode.Pycharm.Spyder 都是目前非常好的Python编辑器,但在数据科学领域,Jupyter notebook 仍有无法取代的地方.正是 ...

  2. VS Code 连接远程服务器运行 Jupyter Notebook

    作者:张生荣 出处:zhangshengrong.com 工欲善其事,必先利其器,开发工具这个东西觉得折腾下还是有好处的.但常常感觉专门抽出时间搞这个浪费时间,更常见的现象是已经明显感觉到当前的开发工 ...

  3. Jupyter Notebook的15个技巧和窍门,可简化您的编码体验

    Jupyter Notebook is a browser bases REPL (read eval print loop) built on IPython and other open-sour ...

  4. 文档编写之从Jupyter notebook到Gitbook迁移之路 写作神器了解一下

    Gitbook 前言 Markdown Jupyter notebook 第一个问题:Jupyter notebook是什么? 第二个问题:怎么安装? 第三个问题:如何启动Jupyter Notebo ...

  5. 2022年7月25日开始学习Jupyter Notebook

    今天是2022年7月25日,开始学习Jupyter Notebook. 最近看了一篇论文,采用改进YoloV4模型检测复杂环境下马铃薯_张兆国.论文里的方法是在的复杂环境下检测马铃薯,处理照片所用的软 ...

  6. 如何在本地访问远程服务器的jupyter notebook?

    背景 jupyter notebook作为一个非常好用的工具,我们经常会在学习python以及深度学习的时候用到,但是经常我们面临的问题是远程服务器上的jupyter notebook,我们可能在本地 ...

  7. Python | 安装Jupyter Notebook及其目录的更改 jupyter问题

    20211223 在非输入出双击d删除单元格 20211218 https://www.jianshu.com/p/c51f9504d84f jupyter,ipynb转py 20211117 htt ...

  8. Jupyter Notebook 远程访问设置方法

    1. 设置密码 In [1]: from notebook.auth import passwd In [2]: passwd() Enter password: Verify password: O ...

  9. Ubuntu 安装 IPython、jupyter notebook

    1. 升级 pip sudo pip3 install --upgrade pip 2. 安装 IPython IPython 5.x 是最后一个支持 Python2 的 IPython . sudo ...

最新文章

  1. 三类常见软件质量(Quality Attribute)属性的通俗解释
  2. 在UltraWebGrid单元格中绑定dropdownlist
  3. iptables禁止端口和开放端口
  4. mobi格式电子书_进阶能力 | 了解常见的电子书格式
  5. SQL基础E-R图画法(一)
  6. 从零开始编写深度学习库(五)ConvolutionLayer CPU编写
  7. java jdbc_详解Java基础知识——JDBC
  8. 最短路问题_Dijkstra算法
  9. 手机壳定制商城小程序系统 手机壳定制商城小程序源码
  10. [数据库】sql 查询语句 汇总
  11. MATLAB基础教程
  12. H5热门游戏模板案例解读:贪吃蛇玩法的新高度
  13. 跨数据库同步方案汇总
  14. (转)loff_t *ppos是什么东东
  15. altium 不规则焊盘 创建异形焊盘方法
  16. 在MySQL中实现交叉表查询1(静态交叉表)
  17. 怎么在cmd中运行python脚本_cmd中运行python脚本智能使用流程
  18. 西安电子科大版《计算机操作系统》第四版共读——第十一章 多媒体操作系统
  19. 云服务器常见的十个问题
  20. server 群辉emby_群晖NAS | 安装使用Emby媒体服务器(解决无法启动的问题)

热门文章

  1. 2022相亲交友婚恋源码支持公众号APP小程序
  2. Altium Desiner10 设计简单了解及PCB四层板设计详细介绍
  3. 高校图书馆管理系统的设计与实现
  4. 【一、前端开发基础】HTML+CSS基础
  5. 战神引擎经验倍率调整
  6. html2canvas 图片中的文字显示模糊 图片模糊 二维码模糊 的原因之一
  7. 基于ODX/OTX诊断的整车扫描
  8. 【插件】大漠后台绑定 - 剑灵2 、天堂W
  9. c语言指针示例代码,C语言之指针(示例代码)
  10. 大学的电子创新班之路,玩mcu,dsp,arm嵌入式