在python&numpy中切片(slice)
在python&numpy中切片(slice)
上文说到了,词频的统计在数据挖掘中使用的频率很高,而切片的操作同样是如此。在从文本文件或数据库中读取数据后,需要对数据进行预处理的操作。此时就需要对数据进行变换,切片,来生成自己需要的数据形式。
对于一维数组来说,python原生的list和numpy的array的切片操作都是相同的。无非是记住一个规则arr_name[start: end: step],就可以了。
实例:

下面是几个特殊的例子:
[:]表示复制源列表- 负的index表示,从后往前。-1表示最后一个元素。

相对于一维数组而言,二维(多维)数组用的会更多。一般语法是arr_name[行操作, 列操作]
先随机产生一个3*4的数组。
in:arr = np.arange(12).reshape((3, 4))
out:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
- 取行数据
arr[i, :] #取第i行数据
arr[i:j, :] #取第i行到第j行的数据
- 取列数据(注意数据格式)
in:arr[:,0] # 取第0列的数据,以行的形式返回的
out:
array([0, 4, 8])
in:arr[:,:1] # 取第0列的数据,以列的形式返回的
out:
array([[0],
[4],
[8]])
- 取一个数据块
# 取第一维的索引1到索引2之间的元素,也就是第二行
# 取第二维的索引1到索引3之间的元素,也就是第二列和第三列
in:arr[1:2, 1:3]
out:
array([[5, 6]])
# 取第一维的全部
# 按步长为2取第二维的索引0到末尾之间的元素,也就是第一列和第三列
in: arr[:, ::2]
out:
array([[ 0, 2],
[ 4, 6],
[ 8, 10]])
参考文献
在python&numpy中切片(slice)的更多相关文章
- Python numpy中矩阵的用法总结
关于Python Numpy库基础知识请参考博文:https://www.cnblogs.com/wj-1314/p/9722794.html Python矩阵的基本用法 mat()函数将目标数据的类 ...
- Python numpy 中常用的数据运算
Numpy 精通面向数组编程和思维方式是成为Python科学计算大牛的一大关键步骤.——<利用Python进行数据分析> Numpy(Numerical Python)是Python科学计 ...
- python numpy中sum()时出现负值
import numpy a=numpy.random.randint(1, 4095, (5000,5000)) a.sum() 结果为负值, 这是错误的,a.sum()的类型为 int32,如何做 ...
- 【转】Python高级特性——切片(Slice)
摘录廖雪峰网站 定义一个list: 1 L = ['haha','xixi','hehe','heihei','gaga'] 取其前三个元素: >>> L[0],L[1],L[2] ...
- python之列表切片(slice)
使用索引获取列表的元素(随机读取) 列表元素支持用索引访问,正向索引从0开始 colors=["red","blue","green"] c ...
- Python Numpy中数据的常用的保存与读取方法
在经常性读取大量的数值文件时(比如深度学习训练数据),可以考虑现将数据存储为Numpy格式,然后直接使用Numpy去读取,速度相比为转化前快很多. 下面就常用的保存数据到二进制文件和保存数据到文本文件 ...
- Day7 python高级特性-- 切片 Slice
先举一个例子,取list或tuple中的某几个元素: 1.取 ['a','b','c','d','e','f'] 第1.2.5.6个元素: >>> a = [' ...
- python numpy中数组.min()
import numpy as np a = np.array([[1,5,3],[4,2,6]]) print(a.min()) #无参,所有中的最小值 print(a.min(0)) # axis ...
- Python Numpy中transpose()函数的使用
在Numpy对矩阵的转置中,我们可以用transpose()函数来处理. 这个函数的运行是非常反常理的,可能会令人陷入思维误区. 假设有这样那个一个三维数组(2*4*2): array ([[[ 0, ...
随机推荐
- iOS 图片水印、图片合成文字或图片实现
这个需求可能有时候会碰到,比如自己的照片加版权,打水印等 网上的方法,有不少感觉不全对,或者需求不是特全,这里我总结了3种场景下的需求: 1.本地图片合成文字 2.本地图片合成图片 3.网络图片先下载 ...
- 【开源.NET】 分享一个前后端分离的轻量级内容管理框架
开发框架要考虑的面太多了:安全.稳定.性能.效率.扩展.整洁,还要经得起实践的考验,从零开发一个可用的框架,是很耗时费神的工作.网上很多开源的框架,为何还要自己开发?我是基于以下两点: 没找到合适的: ...
- linux的Make使用的重定向
Linux中,脚本语言环境中,即你用make xxx即其他一些普通linux命令,比如ls,find等,不同的数字,代表不同的含义: 数字 含义 标准叫法 0 标准输入 stdin = ...
- 在ASP.NET Core下使用SignalR技术
一.前言 上次我们讲到过如何在ASP.NET Core中使用WebSocket,没有阅读过的朋友请参考 WebSocket in ASP.NET Core 文章 .这次的主角是SignalR它为我们提 ...
- Raid类型
raid0:两块磁盘同时写入raid1:一块磁盘写入,另一块磁盘做备份,利用率50%raid5:两块磁盘同时写入两块磁盘都有内容,第三块磁盘做效应,n/n-1的利用率raid6:四块磁盘两块磁盘做存储 ...
- ubuntu12.04下安装pptp_vpn服务器
1.下载安装apt-get install pptpd 2.配置/etc/pptpd.confvim /etc/pptpd.conf添加下面两行(在配置文件的最后取消注释修改IP即可)localip ...
- BZOJ ac100题存档
不知不觉AC100题了,放眼望去好像都是水题.在这里就做一个存档吧(特别感谢各位大神尤其是云神http://hi.baidu.com/greencloud和丽洁姐http://wjmzbmr.com/ ...
- NFS安装及配置
NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操作系统能够彼此分享个 ...
- Material Design学习-----FloatingActionButton
FloatingActionButton是悬浮操作按钮,它继承自imageview,所以说它具备有imageview所有的方法和属性.与其他按钮不同的是,FloatingActionButton默认就 ...
- 【经验】css
1.父元素overflow:hidden,当父元素大小减小到不容纳子元素时,会出现滚动条.2.input的盒模型尺寸基准是content-box,它的宽度将是以width-border计算,也就是说一 ...