- 博客(21)
- 收藏
- 关注
原创 python代码题(算法与数据结构:前缀和、滑动窗口;二分查找;字符串;遍历;二叉树;栈和队列;斐波那契数列))
1.题目描述 找出所有和为S的连续正数序列 输出描述: 输出所有和为S的连续正数序列。序列内按照从小至大的顺序,序列间按照开始数字从小到大的顺序。 思路: 知识点:数学,前缀和,滑动窗口。 先指定高低两个指针分别等于1和2,若总和<S,则高指针+1;若总和>S,则低指针+1。 滑动窗口方法 时间复杂度:O(N) 空间复杂度:O(1) class Solution: def FindContinuousSequence(self, tsum): lowIndex = 1
2020-10-14 16:44:16
352
原创 时间复杂度与空间复杂度(算法与数据结构)
1.题目描述: 输出所有和为S的连续正数序列。序列内按照从小至大的顺序,序列间按照开始数字从小到大的顺序 解题思路 要点1:连续数组的求和公式:s=(a0+an)/2 要点2:设立两个指针p1和p2,初始时p1指向1,p2指向2,然后求解p1到p2范围内的数的和,如果和比待求和大,则p1++,否则p2++,直到最后求出解。 class Solution: def FindContinuousSequence(self, tsum): arrayList = [] fo
2020-10-11 16:35:20
175
原创 随机森林分类和决策树的对比
%matplotlib inline from sklearn.tree import DecisionTreeClassifier from sklearn.ensemble import RandomForestClassifier from sklearn.datasets import load_wine wine = load_wine() wine.data # 特征矩阵,不能为一维,要和标签分开导入 wine.target # 标签,必须为一维,要和特征矩阵分开导入 from skle
2020-09-29 16:05:22
1948
原创 决策树案例:泰坦尼克号生存者预测
数据预处理 import pandas as pd from sklearn.tree import DecisionTreeClassifier import matplotlib.pyplot as plt from sklearn.model_selection import GridSearchCV # 超参数自动搜索模块 data = pd.read_csv('mytrain.csv') data.info() # 显示表格信息,判断含有缺失值和非数字的列 # 数据预处理: data.drop
2020-09-29 09:33:20
499
原创 交叉验证与回归树
在回归树中,没有标签分布是否均衡的问题,因此就没有class_weight这样的参数 交叉验证 from sklearn.datasets import load_boston # 导入波士顿房价数据 from sklearn.model_selection import cross_val_score # 交叉验证 from sklearn.tree import DecisionTreeRegressor # 回归树 boston = load_boston() regressor = Decis
2020-09-28 10:01:33
787
1
原创 Python:列表、元组、字典、参数
0.tab键可以显示函数,例如:a.tab键 1.=是赋值的意思,不是等于,要比较两个元素是否相等需要用== 2.()可以决定计算的优先次序 3.同一个列表中可以存储多种数据类型,也可以存储列表 变量[下标]可以选取列表中的元素 a[-3] #列表中倒数第三个元素,没有[-0] a[0:2] #选取列表中下标为0,1的两个元素(前闭后开) a[0:8:2] #2代表步长,选取列表中下标为0,2,4,6的元素 del[0:2] #删除列表中下标为0,1
2020-09-27 16:28:14
271
原创 DataFrame可视化
柱状图 df.plot.scatter(x = 'against_bug',y = 'against_dark',c = 'against_electric') # 最多展示三个变量之间的关系 df['against_bug'].value_counts()[:4].plot.bar() # 柱状图,value_counts()[:4]写入的是某一列中的数据数值,在截至数值上必须有数据,否则会报错 grouped = df.groupby('against_bug') gs = grouped.si
2020-09-25 16:05:40
1283
原创 Matplotlib绘制柱状、散点、直方、箱型; Subplots绘制子图;共享轴线
Matplotlib介绍 %matplotlib inline #魔法函数,有了它,直接就可以显示结果,不需要plt.show() import numpy as np import matplotlib.pyplot as plt X=np.linspace(0,2*np.pi,100) #均匀地划分数据 Y=np.sin(X) Y1=np.cos(X) plt.plot(X,Y) #向其中添加元素 plt.plot(X,Y1) #向其中添加元素 plt.show() #数据可视化 plt.sub
2020-09-25 14:24:04
721
原创 pandas与numpy
Pandas 分组计算 groupby用法 df.type1.value_counts() # 输出“type1”这一列不同元素的数量 grouped=df.groupby('type1') # 按照某一列的元素来分组 grouped.size() # 输出“type1”这一列不同元素的数量 grouped.groups # 列举每个组内的索引 len(grouped) # 输出总组数 统计计算 grouped.sum() # 以分组的列为索引,求总和 grouped.mean() # 以分组的列
2020-09-22 17:43:41
197
原创 Python的数据处理:创建、舍弃、处理缺失值、文本数据分割、索引、切片方式
学习内容 数据处理 读取数据 import pandas as pd data_url = "https://pai-public-data.oss-cn-beijing.aliyuncs.com/pokemon/pokemon.csv" #python填写路径时,要么使用/,要么使用\\ df = pd.read_csv(data_url) df.head() # 读取数据前5行 print df.tail() # 打印数据后5行 print df.columns #打印列名 pr
2020-09-16 19:17:09
997
原创 Python:内置函数、对象属性
学习内容 类与对象 函数运行 运行函数时会从定义函数开始运行,而不会从类开始运行 super() 函数 super() 函数是用于调用父类(超类)的一个方法,可用其来代替父类名称 多重继承 方法名同,默认调用的是在括号中排前地父类的方法 类属性与实例属性的值 class Test(object): class_attr = 100 # 类属性 def __init__(self): self.sl_attr = 88 # 实例属性 def func(self)
2020-09-14 15:46:37
237
原创 Python:函数和Lambda表达式
学习内容 函数和Lambda表达式 函数 参数 def 函数(形参): # 在使用函数时形参可任意更改名称或改为具体数据 *args #可变参数允许传入零个到任意个参数,它们在函数调用时自动组装为一个元组 (tuple) **kw #关键字参数允许传入零个到任意个参数,它们在函数内部自动组装为一个字典 (dict) *, nkw #使用命名关键字参数时,要特别注意不能缺少参数名 函数的返回值 def printme(str): print(str) #没有return,返回值为Non
2020-09-12 17:00:36
225
原创 Python的集合与序列
学习内容 集合与序列 集合(key为不可变类型,即可哈希的值) 使用set(value)工厂函数,把一个列表、元组、字符串转换成集合 集合的两个特点:无序 和唯一 (key不重复) 由于 set 存储的是无序集合,所以我们不可以为集合创建索引或执行切片(slice)操作,也没有键(keys)可用来获取集合中元素的值,但是可以判断一个元素是否在集合中 在集合中添加元素 set.add(elmnt) #用于给集合添加元素,如果添加的元素在集合中已存在,则不执行任何操作,只能添加一个元素 set.update
2020-09-11 18:51:33
707
原创 Python的字符串与字典
学习内容 字符串与字典 字符串 对字符串中的符号进行转义 print('let\'s go') # let's go,加/ print("let's go") # let's go,用双引号就可以识别单引号,不需要进行转义 print(r'C:\Program Files\Intel\Wifi\Help') # C:\Program Files\Intel\Wifi\Help,加r 多行字符串 ''' 可以使用制表符 TAB ( \t )。 也可以使用换行符 [ \n ]以及其他特殊字符 ''' "
2020-09-11 15:17:35
307
原创 Python:列表与元组的相关操作、深浅拷贝区别
学习内容 列表与元组 列表 列表的几种表示: x=list(range(10)) x=[0]*5 #用 * 使列表中所有元素均相同 x = [0 for i in range(5)] #将所有i都赋值为0 向列表中添加元素 x=[7,8,9] x.append([1,2,3]) #追加x=[7,8,9,[1,2,3]],[1,2,3]算作一个元素,只占用一个下标 x.extend([1,2,3]) #扩展x=[7,8,9,1,2,3] x.insert(2, 0)
2020-09-10 09:58:29
250
原创 Python:try - except 语句、raise语句、对文件的操作语句
学习内容 异常处理 try - except 语句 不管try子句里面有没有发生异常,finally子句都会执行 如果在try子句执行时没有发生异常,将执行else语句(必须存在except,才能存在else,否则语法错误) 使用多个except代码块时,必须坚持对其规范排序,要从最具针对性的异常到最通用的异常 f = open('test.txt') #OSError:No such file or directory: 'test.txt' s = 1 + '1' #TypeErr
2020-09-08 18:08:26
177
原创 python的条件语句与循环语句
学习内容: 条件语句与循环语句 条件语句 else后面要加: elif 语句即为 else if,用来检查多个表达式是否为真,并在为真时执行特定代码块中的代码 删除 list.pop(0)删除指定位置的元素 list.remove(val)删除指定数值的元素 assert 用来判断程序是否出错 只有为true才能让程序正常运行 while循环语句 while true:无限循环 while count:可以用来限制循环次数,while语句后要加: break可以用来中断while循环,不再执行相同缩进的语句
2020-09-08 16:57:31
236
1
原创 Python:注释、变量、运算符与数据类型、位运算
学习内容: 注释、变量、运算符与数据类型、位运算 注释 方式有三种: 1.# 单行注释 2.python中单引 ’ 和双引 " 用处相同, 三个单引 ''' 多 行 注 释 内 容 ''' 3.三个双引 """ 多 行 注 释 内 容 """ 运算符 算术运算符 #整除=0 print(3//4) #取余=1 print(5%4) #幂次3*3=9 print(3**2) 比较运算符 #!=表示不等于,判断为true print(4!=7) 逻辑运算符 与and,都为真则为真 或or,一个为真则
2020-09-07 22:53:21
129
原创 关于安装anaconda的一些错误经验
Python基础入门:关于安装anaconda的一些错误经验 一、将你conda创建的环境与Jupyter Notebook相关联,使得jupyter notebook主界面中显示cnada conda install nb_conda 二、更新pip 1.直接到“https://pypi.org/project/pip/”网站,下载最新版的pip文件:pip-20.2.2-py2.py3-none-any.whl 2.将,whl文件放置在anaconda的安装目录下 3.通过cmd 进入运行界面 4通过
2020-09-04 17:39:14
168
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人