python transpose函数 index=false
1、Numerical Python是高性能科学计算和数据分析的基础包。它提供了一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组ndarray;用于对整组数据进行快速运算的标准数学函数(无需编写循环);用于读写磁盘数据的工具以及用于操作内存映射文件的工具;线性代数、随机数生成以及傅里叶变换功能;用于集成由C、C++、Fortran等语言编写的代码的工具;提供了一个简单易用的CAPI。
2、NumPy最重要的特点就是其N维数组对象(即ndarray),是一个快速灵活的大数据集容器;是一个通用的同构数据多维容器,即所有元素必须为相同类型的。每个数组都有一个shape(一个表示各维度大小的元组)和一个dtype(一个用于说明数组数据类型的对象)。
3、ndarray的创建,array函数,zeros函数,ones函数,empty函数,arange函数(注意与range和xrange函数的区别),eye和identity函数。
4、ndarray的数据类型,dtype,也可以通过astype函数转换数组的类型。注意:调用astype无论如何都会创建出一个新的数组(原始数据的一份拷贝),即使新dtype与老dtype相同也是如此。
5、数组和标量之间的运算,不用编写循环就可以对数据执行批量运算,即矢量化。大小相等的数组之间的任何算术运算都会将运算应用到元素级;数组与标量之间的运算也会将那个标量传播到各个元素;不同大小的数组之间的运算叫做广播(broadcasting)。
6、数组基本的索引和切片。当将一个标量值赋值给一个切片时(如arr[5:8]= 12),该值会自动传播到整个选区。跟列表最重要的区别在于,数组切片是原始数组的视图,这意味着数据不会被复制,视图上的任何修改都会直接映射到源数组上。由于NumPy的设计目的是处理大数据,所以可以想象,假如NumPy坚持要将数据复制来复制去的话会产生何等的性能和内存的问题。也可以显式地进行复制操作,例如arr[5:8]、copy()。二维数组元素的索引访问的两种方式,例如arr0,arr[0,2]。切片索引;布尔型索引,通过布尔型索引选取数组中的数据,将总是创建数据的副本,即使返回一模一样的数组也是如此;花式索引(Fancyindexing),花式索引跟切片不一样,它总是将数据复制到新数组中。
7、数组转置和轴对称。转置(transpose)是重塑的一种特殊形式,它返回的是数据的视图(不会进行任何复制操作),tanspose方法和T属性,swapaxes方法。
8、通用函数(ufunc):快速的元素级数组函数。一些一元ufunc和一些二元ufunc。
9、利用数组进行数据处理,用数组表达式代替循环的做法,通常被称为矢量化。
(1)将条件逻辑表述为数组运算,numpy、where(condition, x , y)函数是三元表达式xif condition else y的矢量化版本;
(2)数学和统计方法,例如numpy、sum(arr, axis = 0)函数(也可写成arr、sum(axis = 0)),还有一些其他的函数,如mean,std,var,min(注意与通用函数minimum的区别),max(注意与通用函数maximum的区别),argmin,argmax,cumsum,cumprod;(3)用于布尔型数组的方法,例如:arr= randn(100),(arr > 0)、sum(),另外还有两个方法,any和all,这两个方法也能用于非布尔型数组,所有非0元素将会被当做True;
(4)排序,arr、sort(1)为在第1维上的就地排序,会修改原数组本身,而顶级方法numpy、sort(1)为在第1维上的复制排序,返回的是数组的已排序副本,利用排序后的数组可以计算数组的百分位数;(5)唯一化以及其他的集合逻辑,numpy提供了一些针对一维ndarray的基本集合运算,最常用的numpy、unique()函数,与sorted(set())的功能类似,numpy、in1d函数用于测试一个数组中的值在另一个数组中的成员资格,返回一个布尔型
数组,其他方法例如intersect1d(x,y),union1d(x,y),setdiff1d(x,y),setxor1d(x,y)。
10、用于数组的文件输入输出。
false是什么函数(1)将数组以二进制格式保存到磁盘,numpy、save,numpy、load,数组文件格式为、npy,将多个数组保存到一个压缩文件中numpy、savez,numpy、load,数组文件格式为、npz;(2)存取文本文件,NumPy中提供numpy、loadtxt,numpy、savetxt,numpy、genfromtxt。
11、线性代数。NumPy提供了一个用于矩阵乘法的dot函数(既是一个数组方法也是numpy命名空间中的一个函数),numpy、linalg库中有一组标准的矩阵分解运算以及诸如求逆和行列式之类的东西,例如diag,trace,det,eig,inv,svd,solve。
12、随机数生成。numpy、random模块提供了一些用于高效生成多种概率分布的样本值的函数。例如:rand(均匀分布),randint(随机整数),randn(正态分布),binomial(二项分布),normal(正态分布),beta(Beta分布),chisquare(卡方分布),gamma(Gamma分布),uniform(在[0,1]之间均匀分布)。
第二章 pandas入门
1、pandas的两个主要数据结构:Series和DataFrame。
2、Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。Series的字符串表现形式为:索引在左边,值在右边。可通过Series的values和index属性来获取其值和索引对象。在创建Series的时候可以通过index作为关键字参数手动指定每个值的索引。可通过索引的方式选取Series中的单个或一组值。Series类型的对象进行的运算(如根据布尔型数组进行过滤、标量乘法、应用数学函数等)都会保留索引和值之间的链接。Series可以被看成是一个 定长 的 有序 字典(注意与字典的区别),因为它是索引值到数据值的一个映射。如果数据被存放在一个Python字典中,也可以直接通过这个字典来创建Series。pandas中的isnull和notnull函数(Series对象也可直接使用这两个函数)可用于检测缺失数据。Series最重要的一个功能是:它在算术运算中会自动对齐不同索引的数据。Series对象本身及其索引都有一个name属性。Series的索引可以通过赋值的方式就地修改。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论