loannes's blog

首页

关于

归档

loading..
Python, Pandas

Python数据分析之Pandas-Series与DataFrame基本功能(二)

算数运算和数据对齐 pandas中的一个功能是对不同索引的对象进行算数运算。在运算时,如果存在不同的索引对,那么结果就是它们的并集。 In [122]: s1 = Series([7.3, -2.5, 3.4, 1.5], index=['a','c','d','e']) In [123]: s2 = Series([-2.1, 3.6, -1.5, 4, 3.1], index=['a','c','e','f','g']) In [124]: s1 Out[124]: a 7.3 c -2.5 d 3.4 e 1.5 dtype: float64 In [125]: s2 Out[125]: a -2.1 c 3.6 e -1.5 f 4.0 g 3..

更多
loading..
Python, pandas

Python数据分析之Pandas-Series与DataFrame基本功能(一)

重新索引 pandas对象的一个重要方法,其作用是创建一个适应新索引的新对象。 reindex在Series上的应用 In [3]: obj = Series([4.5, 7.2, -5.3, 3.6], index=['d','b','a','c']) In [4]: obj Out[4]: d 4.5 b 7.2 a -5.3 c 3.6 dtype: float64 In [5]: obj2 = reindex(['a', 'b', 'c', 'd', 'e']) In [6]: obj2 = obj.reindex(['a', 'b', 'c', 'd', 'e']) In [7]: obj2 Out[7]: a -5.3 b 7.2 c 3.6 d ..

更多
loading..
Python, Pandas

Python数据分析之Pandas-Series与DataFrame-

在pandas中接下来要经常用到的数据结构就是Series和DataFrame了。这两个对象为大多数数据处理提供了可靠、易于使用的功能 Series Series是由一组数据以及这组数据所对应的数据标签(即索引)组成。 In [66]: obj = Series([4, 7, -5, 3]) In [67]: obj Out[67]: 0 4 1 7 2 -5 3 3 dtype: int64 其中左边的一列数字即为索引,索引默认是0到N-1的数字。 自定义索引 我们可以通过设置index属性来自定义索引的表现形式。 In [68]: obj2 = Series([4, 7, -5, 3],index = ['d','b','a','c']) In [69]: obj2 O..

更多
loading..
基础, NumPY

Python数据分析之Numpy-数组转置与轴对换详解

在数学中,将矩阵的行列互换就称之为转置。那在NumPy数组中也是如此。 NumPy共有三种转置方式**T属性**、transpose方法、swapaxes方法。 T属性 T属性 它比较常用于二维数组,通过行列互换得到一个新的数组,和数学中的转置是一模一样的。 通过转置后得到一个行列互换的新的矩阵: In [170]: arr = np.arange(12).reshape(4,3) In [171]: arr Out[171]: array([[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11]]) In [172]: arr.T Out[172]: array([[ 0, 3, 6, 9]..

更多
loading..
Python, NumPy

Python数据分析之Numpy-基本的索引与切片

NumPy数组的切片与Python中列表的区别在于它的切片是直接对原始数据进行操作,也就是说你做的任何修改都会直接影响到源数据,因为它修改的是内存中的数据。 NumPy数组切片与列表切片的区别 In [36]: arr = np.arange(10) In [37]: arr Out[37]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) In [38]: arr[3:6] Out[38]: array([3, 4, 5]) In [39]: arr[3:6] = 10 In [40]: arr Out[40]: array([ 0, 1, 2, 10, 10, 10, 6, 7, 8, 9]) In [43]: arr2 = arr #将arr赋..

更多
loading..
Python, NumPy

Python数据分析之Numpy-ndarray及数据类型

NumPy的ndarray ndarray作为NumPy中最重要的特点,你可以利用这个对数组进行数学运算。 下面来看一个简单的例子 In [1]: import numpy as np In [2]: data = [1, 2, 3, 4, 5] # 创建一个普通的数组 In [3]: data2 = np.array(data) # 通过np.array函数把data转为ndarray对象 In [4]: data2 Out[4]: array([1, 2, 3, 4, 5]) In [5]: data Out[5]: [1, 2, 3, 4, 5] # 粗略一看发现没什么特别大的区别 继续往下看 In [6]: data2 * 10 Out[6]: array([10, 20, 30,..

更多
loading..
Python,NumPy

Python数据分析之Numpy---入门安装介绍

NumPy(Numerical Python)是高性能科学计算和数据分析的基础包,主要功能是对N维数组的操作和计算,其计算效率是Python原生包的N倍,在使用Python做数据分析过程中NumPy是我们必不可少的一个工具。 作为一个基础包,功能上远不及pandas来的那么高级(下面会出pandas系列的笔记),但是作为新手入门NumPy还是很值得我们学习一下,为接下来学习pandas打好基础。 准备工作 安装Python环境 如果没有pip环境请参考这篇文章 pip 的简单安装与基本使用 windows 下载NumPy安装包,注意安装包的Python版本和系统版本。例如numpy-1.16.2-cp27-cp27m-manylinux1_x86_64.whl中cp27指的是python2.7版本..

更多
loading..
python

深度解析Python切片

前言 在平时是否会遇到这样的场景,需要分离出 列表(List)中的部分数据。很多初学者都会想到用while循环去取,很显然这么做肯定是不可取的而且违背了Python之禅中的最重要的一条: Beautiful is better than ugly. 设计高效且漂亮的解决方案是每个程序员的必备素质 那这个时候Python切片就是我们的不二之选,Python切片的表达式十分简单,但是如果不彻底理解它的话很容易出错,这也是为什么本人特地专门为此写一篇文章的原因。 Python切片语法表达式 List[start_index : end_index : step] 先简单解释下这个表达式: start_index : 起始索引值,一般默认为0,表示从列表的初始点开始取值。另外,如果step为负数的话则默认..

更多
内存管理

iOS内存管理那些事

================= 前言 今天在网上看到一道蛮有趣的问题,内容是"对于已经会使用ARC的iOS开发者来说还有必要学习手动内存管理吗?" 。换做一年前的我可能会觉得那必须不用学啊,手动管理内存管理太麻烦了而且很容易出错。ARC现在用下来完全能够解决我日常开发中的所有内存管理的问题,而且苹果在WWDC2011上已经强烈推荐开发者使用ARC,为什么不用ARC呢? 直到我有一次使用了第三方组件,当时这个组件是不支持ARC的。有一天在我做新功能的时候突然出现了一个没有任何踪迹的崩溃,经过了1个通宵的排查和网友的帮助最后才得知原来是非ARC和ARC的代码混用出现的问题,后来还是自己重新写了个非ARC的功能才解决了这个问题。 引用计数 每当一个对象被创建的时候它的引用计数为1,为保..

更多
ATS

对于 iOS10 中 ATS 的理解

WWDC 15 后,对其中有一项新引入的 features 特别在意,那就是苹果将在 2017 年初即将强制实施的一项隐私保护功能 ATS(App Transport Security)。 在 WWDC 16 中也提到了 ATS,当时声明了 ATS 安全功能与 iOS 9 和 OS X 10.11 一同发布,旨在强制性地使用 HTTPS,以保护应用程序可安全地接入服务器。所有提交到 App Store 的应用程序都需要在 2016 年底执行 ATS 协议。 此处更新于 2016 年 12 月 21 日。 收到消息称苹果将延后强制加入 HTTPS 服务,原因各说纷纭就不详细说明了。至于延期到什么时候还未曾有消息。 ATS(NSAppTransportSecurity) It improves pr..

更多
11516171819