python nums函数获取结果记录集有多少行记录_python3 数据挖掘之pandas学习记录(一)-----NumPy...
这几天由于对excel的模块使用及数据分析处理的需求,看了下pandas,分享一下。
1.pandas之numpy
1.1NumPy是Python数值计算最重要的基础包。很多都采用NumPy的数组作为构建基础。
NumPy自己并没有提供很高级的数据分析处理功能,理解NumPy数组及面向数组的计算是为了更加高效方便的使用pandas。
1.2创建ndarray
创建序列最简单就是使用array函数,举几个简单例子:
import numpy as np
my_arr = np.random.randn(2,3)
print(my_arr)
结果如下:
[[-2.30239282 -0.49235142 0.66086362]
[-1.59935706 -0.95671158 0.42411401]]
当我们输入列表转换:
L = [4,2,2.3,9,8]
my_arr = np.array(L)
print(my_arr)
结果:
[4. 2. 2.3 9. 8. ]
当我们嵌套序列:
L1 = [[4,2,3,9,8],[5,6,0,1,7]]
my_arr1 = np.array(L1)
print(my_arr1)
结果:
[[4 2 3 9 8]
[5 6 0 1 7]]
又一组等长列表(注意一定是等长)组成的列表会被转换成一个多维数组。
print(my_arr1.ndim)
print(my_arr1.shape)
结果:
2
(2, 5)
以上可以用属性ndim和shape验证,ndim返回数组的维度,shape返回各位维度大小的元祖。dtype返回数组数据类型。astype转换数组的数据类型。
问:整形数据不应该是int吗?浮点型数据不应该是float吗?
解:int32、float64是Numpy库自己的一套数据类型。
arange是Python内置函数range的数组版:
my_arr2 = np.arange(10)
print(my_arr2)
结果:
[0 1 2 3 4 5 6 7 8 9]
你可以通过ndarray的astype方法明确地将一个数组从一个dtype转换成另一个dtype;如果将浮点数转换成整数,则小数部分将会被截取删除;如果某字符串数组表示的全是数字,也可以用astype将其转换为数值形式:
实例1:
L = [4,2,3,9,8]
my_arr = np.array(L)
print(my_arr.dtype)
float_my_arr = my_arr.astype(np.float64)
print(float_my_arr.dtype)
结果:
int32
float64
实例2:
L = [4.1,2.2,3.9,9.2,8.4]
my_arr = np.array(L)
print(my_arr.dtype)
float_my_arr = my_arr.astype(np.int32)
print(float_my_arr.dtype)
print(float_my_arr)
结果:
float64
int32
[4 2 3 9 8]
实例3:
L2 = ['1.50','9.9','40','-10']
my_arr2 = np.array(L2,dtype=np.string_)
my_arr2_str = my_arr2.astype(float)
print(my_arr2_str.dtype)
print(my_arr2_str)
结果:
float64
[ 1.5 9.9 40. -10. ]
2.NumPy数组的运算
大小相等的数组之间的任何运算都会将运算应用到每个元素,例如:
L1 = [[4,2,3,9,8],[5,6,0,1,7]]
my_arr1 = np.array(L1)
print(my_arr1)
print(my_arr1 * my_arr1)
结果:
[[4 2 3 9 8]
[5 6 0 1 7]]
[[16 4 9 81 64]
[25 36 0 1 49]]
大小相同的数组之间的比较会生成布尔值数组:
L1 = [[4,2,3,9,8],[5,6,0,1,7]]
L2 = [[1,2,3,4,5],[6,7,8,9,2]]
my_arr1 = np.array(L1)
my_arr2 = np.array(L2)
print(my_arr1 > my_arr2)
结果:
[[ True False False True True]
[False False False False True]]
3.NumPy数组的切片,索引
由于此处书里内容较多,偏于很大,不做详细介绍,简单写一下。
切片索引ndarray的切片语法跟Python列表这样的一维对象差不多,直接切片
二维数组,它是沿着第0轴(即第一个轴)切片的。也就是说,切片是沿着一个轴向选取元素的。表达式L_arr[:2]可以被认为是“选取L_arr的前两行”。
布尔型索引:
数组的长度必须跟被索引的轴长度一致。此外,还可以将布尔型数组跟切片、整数(或整数序列,稍后将对此进行详细讲解)混合使用。注意:如果布尔型数组的长度不对,布尔型选择就会出错。
花式索引它指的是利用整数数组进行索引,花式索引跟切片不一样,它总是将数据复制到新数组中。
python nums函数获取结果记录集有多少行记录_python3 数据挖掘之pandas学习记录(一)-----NumPy...相关推荐
- python nums函数获取结果记录集有多少行记录_PHP mysqli_num_rows():获取查询结果的行数...
在 PHP 中,想要获取由 SELECT 语句查询到的结果集中有多少条数据的话,则需要使用 mysqli_num_rows() 函数来实现.首先我们来看一下该函数的语法结构: 面向对象风格的写法 $m ...
- python nums函数获取结果记录集有多少行记录_Python数据分析——Pandas数据结构和操作...
Pandas是什么? 1.一个强大的分析 结构化数据 的工具集 2.基础是NumPy,提供了 高性能矩阵 的运算 3.应用在数学挖掘,数据分析.比如,学生成绩分析,股票数据分析等 4.提供数据清洗功能 ...
- 【python】一个目录里面多个python程序文件,统计一下里面有多少行代码。即分别列出:代码、空行、注释的行数。
一个目录里面多个python程序文件,统计一下里面有多少行代码.即分别列出:代码.空行.注释的行数. 题目 代码 结果 题目 一个目录里面多个python程序文件,统计一下里面有多少行代码.即分别列出 ...
- mysql 当前记录集不支持书签_存储过程 分页。当前记录集不支持书签。这可能是提供程序或选定的游标类型的限制。...
ifsession("user")="A0331A2"then'试验存储过程response.Write("存储过程")DIMMyComm, ...
- python nums函数_Python中的内置函数
Python中有很多内置函数,不需要我们调用模块可以直接使用,而且都是常用函数的封装,下面我们来看看Python中的内置函数都有那些. 1.abs() abs()是绝对值函数,把一个负数转化为正数,数 ...
- python nums函数_Python函数
一.简介 函数是可重用的程序代码块.函数的作用,不仅可以实现代码的复用,更能实现代码的一致性.一致性指的是,只要修改函数的代码,则所有调用该函数的地方都能得到体现. 函数用关键字def来定义,def关 ...
- python调用函数获取最开始的异常_Python使用sys.exc_info()方法获取异常信息
在实际调试程序的过程中,有时只获得异常的类型是远远不够的,还需要借助更详细的异常信息才能解决问题. 捕获异常时,有 2 种方式可获得更多的异常信息,分别是: 使用 sys 模块中的 exc_info ...
- Python __subclasses__() 函数获取类的所有子类
测试: class A(object):def __init_(self, a, b):self.a = aself.b = bdef add(self, a, b):return a+bdef su ...
- python 0x0101_Python中ASCII转十六进制、C中BCD转十进制、十六进制学习记录
ASCII.BCD转十六进制 ASCII转十六进制转换规则Python实现 BCD转十进制.十六进制BCD码的优点BCD码分类各种BCD码的特点转换规则 ASCII转十六进制 转换规则 ASCII(A ...
最新文章
- 编码中统一更该变量的快捷键_流媒体的7种方式使您成为更好的编码器
- 数据库连接用户名和密码加密
- JAVA——获取classpath文件路径空格转变成了转义字符(%20)的问题解决方案
- Subversion 错误信息一览表
- python自带的shell、其性能优于ipython吗_Python自带的shell,其性能优于IPython
- C/C++ 如何劫持别人家的命令||函数||程序(只能对于window而言)
- nginx 和tomcat,apache的区别于联系。
- 如何查看电脑是32位还是64位的
- MATLAB 撰写word
- java函数调用实例_Java使用方法引用实现任意对象的实例方法
- 最新的.net书籍教程 更新时间:2005-9-5
- linux系统中看视频,怎么在linux里看视频啊?
- JAVA一般项目开发流程
- apache连接mysql配置_Apache+PHP配置及连接mysql数据库
- SiteSucker Mac版(整站下载工具)中文版
- 《阳光下》 ——【传递正反馈】
- WebGIS开发入门
- 小米手机怎么录制视频 手机录制视频的方法
- java.lang.IllegalArgumentException: MALFORMED
- potplay显示服务器关闭,PotPlayer关掉左上角显示播放时间的操作教程
热门文章
- SQL Server 备份与恢复之八:还原数据库
- How Setting Show Transaction Code on SAP Tree Menu Side.
- 关于 V C++ 中 Error 6 fatal error C1075的解决办法
- 架构选型,究竟啥时候选redis?
- Nginx配置IP地址的动态黑名单
- Spring JDBC 示例
- DHCP+VTP(实验讲解+配置)
- 【C语言】实参求值的顺序
- checksec未完待续~
- react和nodejs_如何使用React,TypeScript,NodeJS和MongoDB构建Todo应用