① Python中的Sort

Python中的内建排序函数有 sort()和sorted()两个

list.sort(func=None, key=None, reverse=False(or True))

 

  • 对于reverse这个bool类型参数,当reverse=False时:为正向排序;当reverse=True时:为方向排序。默认为False。
  • 执行完后会改变原来的list,如果你不需要原来的list,这种效率稍微高点
  • 为了避免混乱,其会返回none

e.g.

>>> list = [2,8,4,6,9,1,3]

>>> list.sort()

>>> list
[1234689]
 
sorted(iterable,cmp,key=None, reverse=False(or True)) 
  • 该函数也含有reverse这个bool类型的参数,当reverse=False时:为正向排序(从小到大);当reverse=True时:为反向排序(从大到小)。当然默认为False。
  • 执行完后会有返回一个新排序好的list
  • 使用cmp函数排序,cmp是带两个参数的比较函数

e.g.

>>> list = [2,8,4,1,5,7,3]

>>> other = sorted(list)

>>> other
[1234578]
 
二者区别:

sort()方法仅定义在list中,而sorted()方法对所有的可迭代序列都有效

sorted()不会改变原来的list,而是会返回一个新的已经排序好的list

 

②dataframe 访问元素

贴一篇写的很好的博客:https://blog.csdn.net/wr339988/article/details/65446138/

 

③Python中的集合

用途:

  • 去重
  • 求集合间的并交差补子集等

创建:

s = {1,2,3,4,5,6,7,8}  (可变集合)

注意:创建空集合,必须用set(),不能仅定义s={},这样默认定义的是字典

n_set_test = frozenset(set_test)  (不可变集合)

 

添加|删除 元素:

add 向集合中添加元素  s.add(1)

clear 清空集合  s.clear()

copy 返回集合浅拷贝  ss=s.copy()

remove 删除指定元素  s.remove(3)

pop 随机删除一个元素  s.pop()

 

集合间运算:

子集:issubset()

>>> C < A
True         # C 是 A 的子集
>>> C.issubset(A)
True        
 
并:union()
 
>>> A | B

{'c', 'b', 'f', 'd', 'e', 'a'}
>>> A.union(B)
{'c', 'b', 'f', 'd', 'e', 'a'}
 
交:intersection()
 
>>> A & B

{'c', 'd'}
>>> A.intersection(B)
{'c', 'd'}
 
差:difference()
>>> A - B

{'b', 'a'}
>>> A.difference(B)
{'b', 'a'}
 
对称差:symmetric_difference()
 
>>> A ^ B

{'b', 'f', 'e', 'a'}
>>> A.symmetric_difference(B)
{'b', 'f', 'e', 'a'}
 
 
④list 
※  list计算长度的函数是len(alist),不是alist.len()!!!!
※  定义给定初值或长度的list(比如定义长度为10初始值为0的list)
     s=[0  for  i  in  range(10)]
     ss=[i  for  i  in  range(10)]    ###定义递增的列表

Python&机器学习总结(二)的更多相关文章

  1. python 机器学习(二)分类算法-k近邻算法

      一.什么是K近邻算法? 定义: 如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别. 来源: KNN算法最早是由Cover和Hart提 ...

  2. python机器学习实战(二)

    python机器学习实战(二) 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7159775.html 前言 这篇noteboo ...

  3. python机器学习-sklearn挖掘乳腺癌细胞(二)

    python机器学习-sklearn挖掘乳腺癌细胞( 博主亲自录制) 网易云观看地址 https://study.163.com/course/introduction.htm?courseId=10 ...

  4. python机器学习实战(一)

    python机器学习实战(一) 版权声明:本文为博主原创文章,转载请指明转载地址 www.cnblogs.com/fydeblog/p/7140974.html  前言 这篇notebook是关于机器 ...

  5. SUSE Linux Enterprise 11 离线安装 DLIB python机器学习模块

    python机器学习模块安装 环境:SUSE Linux Enterprise 11 sp4  离线安装 说明:在安装dlib时依赖的基础 环境较多,先升级gcc,以适应c++ 11的使用:需要用到c ...

  6. Python机器学习笔记:常用评估指标的用法

    在机器学习中,性能指标(Metrics)是衡量一个模型好坏的关键,通过衡量模型输出y_predict和y_true之间的某种“距离”得出的. 对学习器的泛化性能进行评估,不仅需要有效可行的试验估计方法 ...

  7. python机器学习-sklearn挖掘乳腺癌细胞(三)

    python机器学习-sklearn挖掘乳腺癌细胞( 博主亲自录制) 网易云观看地址 https://study.163.com/course/introduction.htm?courseId=10 ...

  8. Python机器学习笔记:使用Keras进行回归预测

    Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow.是一个高度模块化的神经网络库,支持CPU和GPU. 本文学习的目的是学习如何加载CSV文件并使其可供Keras使用,如何 ...

  9. Python机器学习笔记:sklearn库的学习

    网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常 ...

随机推荐

  1. Analyzing with SonarScanner for MSBuild

    https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+MSBuild Features The So ...

  2. linux 基础 —— 网络管理

    Linux 最强大的功能是什么?网络功能. 修改 dns 服务器(解析域名到 ip 地址): $ sudo vim /etc/resolvconf/resolv.conf.d/base # 添加如下内 ...

  3. luogu 1121 环状最大两段子段和

    题目大意: 一个序列看做一个环 选两段数使它们和最大 思路: 定义一个dp数组i j 0/1 表示前i个取了连续的j段 0/1表示取不取第i个 但是因为看做一个环 首尾相接的情况可以看做是选三段,其中 ...

  4. csdn 去除广告

    下载 Adblock Plus  下载地址:https://adblockplus.org/ 下载后安装即可.

  5. bzoj1415 [Noi2005]聪聪和可可——概率期望

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1415 看博客:http://www.cnblogs.com/Narh/p/9206642.h ...

  6. vue实例以及生命周期

    1.Vue实例API 1.构造器(实例化) var vm = new Vue({ //选项 |-------DOM(3) |   |-------el (提供一个在页面上已存在的 DOM 元素作为 V ...

  7. bat 截取字符串(for命令) 推荐收藏

    摘自:http://www.jb51.net/article/50354.htm 今天需要用批处理命令处理文件夹中的文件,需要用到bat中的for命令以及字符串截取的一些命令.在上面的链接中找到许多有 ...

  8. codeforces 402E - Strictly Positive Matrix【tarjan】

    首先认识一下01邻接矩阵k次幂的意义:经过k条边(x,y)之间的路径条数 所以可以把矩阵当成邻接矩阵,全是>0的话意味着两两之间都能相连,也就是整个都要在一个强连通分量里,所以直接tarjan染 ...

  9. ASP.NET MVC 生成验证码

    using System.Web.Mvc; using System.Drawing; using System; using System.Drawing.Imaging; using Models ...

  10. C#手机充值系统开发(基于聚合数据)

    说是手机充值系统有点装了,其实就是调用了聚合数据的支付接口,其实挺简单的事 但是我发现博客园竟然没有类似文章,我就个出头鸟把我的代码贡献出来吧 首先说准备工作: 去聚合数据申请账号-添加手机支付的认证 ...