Python中X[:,0]和X[:,1]的用法


Posted in Python onMay 10, 2021

X[:,0]是numpy中数组的一种写法,表示对一个二维数组,取该二维数组第一维中的所有数据,第二维中取第0个数据,直观来说,X[:,0]就是取所有行的第0个数据, X[:,1] 就是取所有行的第1个数据。

举例说明:

import numpy as np
 
X = np.array([[0,1],[2,3],[4,5],[6,7],[8,9],[10,11],[12,13],[14,15],[16,17],[18,19]])
print X[:,0]

X[:,0]输出结果是:

Python中X[:,0]和X[:,1]的用法

import numpy as np
 
X = np.array([[0,1],[2,3],[4,5],[6,7],[8,9],[10,11],[12,13],[14,15],[16,17],[18,19]])
print X[:,1]

X[:,1]输出结果是:

Python中X[:,0]和X[:,1]的用法

X[n,:]是取第1维中下标为n的元素的所有值。

X[1,:]即取第一维中下标为1的元素的所有值,输出结果:

Python中X[:,0]和X[:,1]的用法

X[:, m:n],即取所有数据的第m到n-1列数据,含左不含右

例:输出X数组中所有行第1到2列数据

X = np.array([[0,1,2],[3,4,5],[6,7,8],[9,10,11],[12,13,14],[15,16,17],[18,19,20]])
print X[:,1:3]

输出结果:

Python中X[:,0]和X[:,1]的用法

补充:python中的[1:]、[::-1]、X[:,m:n]和X[1,:]

Python中的[1:]

意思是去掉列表中第一个元素(下标为0),去后面的元素进行操作,以一个示例题为例,用在遍历中统计个数:

题:读入N名学生的成绩,将获得某一给定分数的学生人数输出。

输入格式:

输入在第1行给出不超过10^5^的正整数N,即学生总人数。随后1行给出N名学生的百分制整数成绩,中间以空格分隔。最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔。

输出格式:

在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格。

stu_num = input('请输入学生总人数:')
stu_grade = input('请输入每位学生的成绩(百分制),并以空格分开:').split()  # 将如数的字符串转化成列表
num_and_grade = input('请输入要统计几个分数,以及每个分数值,以空格分开:').split()  # 转成列表格式
result = []  # 定义一个新列表保存结果
for i in num_and_grade[1:]:   # 定义变量i,遍历num_and_grade[]列表中除了第一个元素的其他元素
    result.append(str(stu_grade.count(i)))  # 利用Python的count()函数统计相应i值在列表stu_grade[]列表中的个数,转换成字符串格式并追加到result[]列表中
print(" ".join(result))  # 列表转换成字符串格式,打印结果

结果:

请输入学生总人数:10

请输入每位学生的成绩(百分制),并以空格分开:88 99 75 88 95 42 78 88 95 99

请输入要统计几个分数,以及每个分数值,以空格分开:3 88 99 95

3 2 2

Python中的[::-1]

这个是python的slice notation的特殊用法。

b = a[i:j] 表示复制a[i]到a[j-1],以生成新的list对象

当i缺省时,默认为0,即 a[:3]相当于 a[0:3]

当j缺省时,默认为len(alist), 即a[1:]相当于a[1:10]

当i,j都缺省时,a[:]就相当于完整复制一份a了

b = a[i:j:s]这种格式呢,i,j与上面的一样,但s表示步进,缺省为1.

所以a[i:j:1]相当于a[i:j]

当s<0时:i缺省时,默认为-1; j缺省时,默认为-len(a)-1

所以a[::-1]相当于 a[-1:-len(a)-1:-1],也就是从最后一个元素到第一个元素复制一遍。

a = ['a','b','c','d','e','f','g','h','g','k','l','m']
b = a[:]  # 列表切片,表示把列表a[]的值全部正序复制到列表b[]中
print(b)  # ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'g', 'k', 'l', 'm']
# b = a[n:m]表示列表切片,复制列表a[n]到a[m-1]的内容到新的列表对象b[]
# 当n缺省时,默认为0,即a[:m]
# 当m缺省时,默认到最后,即a[n:]
b1 = a[1:4]
print(b1)  # ['b', 'c', 'd']
b2 = a[:3]
print(b2)  # ['a', 'b', 'c']
b3 = a[1:]
print(b3)  # ['b', 'c', 'd', 'e', 'f', 'g', 'h', 'g', 'k', 'l', 'm']
# b = a[i:j:s]这种格式呢,i,j与上面的一样,但s表示步进,缺省为1,s可以取任何数字.
# 所以a[i:j:1]相当于a[i:j]
b4 = a[1:5:2]
print(b4)  # ['b', 'd']
b5 = a[:5:-1]  # 从末尾倒数取值
print(b5)  # ['m', 'l', 'k', 'g', 'h', 'g']
b6 = a[5::-2]
print(b6)  # 从a[n]处倒数取值
b7 = a[::-1]  # 到这取值
print(b7)  # ['m', 'l', 'k', 'g', 'h', 'g', 'f', 'e', 'd', 'c', 'b', 'a']

输出结果:

['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'g', 'k', 'l', 'm']

['b', 'c', 'd']

['a', 'b', 'c']

['b', 'c', 'd', 'e', 'f', 'g', 'h', 'g', 'k', 'l', 'm']

['b', 'd']

['m', 'l', 'k', 'g', 'h', 'g']

['f', 'd', 'b']

['m', 'l', 'k', 'g', 'h', 'g', 'f', 'e', 'd', 'c', 'b', 'a']

Python中的X[:,m:n]和X[1,:]

X[:,0]是numpy中数组的一种写法,表示对一个二维数组,取该二维数组第一维中的所有数据,第二维中取第0个数据,直观来说,X[:,0]就是取所有行的第0个数据, X[:,1] 就是取所有行的第1个数据。

X[n,:]是取第1维中下标为n的元素的所有值。

X[:, m:n],即取所有数据的第m到n-1列数据,含左不含右

import numpy as np
X = np.array([[0,1,2,3],[4,5,6,7],[8,9,10,11],[12,13,14,15]])  # 定义二维数组
print(X[:,0])  # 取数组X二维数组中每一个的0号下标对应的值 [0 4 8 12]
print(X[1,:])  # 取数组X一维数组中的第一组全部数值  [0 1 2 3]
print(X[:,1:3])  #取所有数据的第1列到3-1列数据,从第0列开始计算,结果如下:
'''
[[1 2]
 [5 6]
 [9 10]
 [13 14]]
'''

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
Python中条件选择和循环语句使用方法介绍
Mar 13 Python
python中文乱码不着急,先看懂字节和字符
Dec 20 Python
Python中将变量按行写入txt文本中的方法
Apr 03 Python
python爬虫租房信息在地图上显示的方法
May 13 Python
Python列表切片常用操作实例解析
Dec 16 Python
python连接PostgreSQL过程解析
Feb 09 Python
基于pytorch padding=SAME的解决方式
Feb 18 Python
Python 线性回归分析以及评价指标详解
Apr 02 Python
Python unittest生成测试报告过程解析
Sep 08 Python
Python3 用matplotlib绘制sigmoid函数的案例
Dec 11 Python
python 遍历磁盘目录的三种方法
Apr 02 Python
pytorch损失反向传播后梯度为none的问题
May 12 Python
Python Django搭建文件下载服务器的实现
详解python的内存分配机制
May 10 #Python
python-for x in range的用法(注意要点、细节)
May 10 #Python
Django显示可视化图表的实践
python 中[0]*2与0*2的区别说明
May 10 #Python
Python超简单容易上手的画图工具库推荐
python爬虫请求库httpx和parsel解析库的使用测评
May 10 #Python
You might like
PHP MemCached 高级缓存应用代码
2010/08/05 PHP
字母顺序颠倒而单词顺序不变的php代码
2010/08/08 PHP
php使用curl和正则表达式抓取网页数据示例
2014/04/13 PHP
Prototype Number对象 学习
2009/07/19 Javascript
js使用for循环与innerHTML获取选中tr下td值
2014/09/26 Javascript
js实现简单选项卡与自动切换效果的方法
2015/04/10 Javascript
jQuery获取与设置iframe高度的方法
2016/08/01 Javascript
js继承实现方法详解
2016/12/16 Javascript
JavaScript DOM节点操作实例小结(新建,删除HTML元素)
2017/01/19 Javascript
jQuery事件详解
2017/02/23 Javascript
React简单介绍
2017/05/24 Javascript
Vue2.0权限树组件实现代码
2017/08/29 Javascript
nuxt+axios解决前后端分离SSR的示例代码
2017/10/24 Javascript
vue-cli中的babel配置文件.babelrc实例详解
2018/02/22 Javascript
浅析vue中的provide / inject 有什么用处
2019/11/10 Javascript
vue实现输入一位数字转汉字功能
2019/12/13 Javascript
JS一次前端面试经历记录
2020/03/19 Javascript
React+EggJs实现断点续传的示例代码
2020/07/07 Javascript
Python装饰器的函数式编程详解
2015/02/27 Python
Linux中Python 环境软件包安装步骤
2016/03/31 Python
Python之父谈Python的未来形式
2016/07/01 Python
python获取当前用户的主目录路径方法(推荐)
2017/01/12 Python
Python正则表达式知识汇总
2017/09/22 Python
Python实现的选择排序算法原理与用法实例分析
2017/11/22 Python
Tensorflow 利用tf.contrib.learn建立输入函数的方法
2018/02/08 Python
python3爬虫之设计签名小程序
2018/06/19 Python
Django多层嵌套ManyToMany字段ORM操作详解
2020/05/19 Python
Python生成器next方法和send方法区别详解
2020/05/30 Python
使用pycharm和pylint检查python代码规范操作
2020/06/09 Python
英文版销售经理个人求职信
2013/11/20 职场文书
工作迟到检讨书
2014/02/21 职场文书
本科毕业生应聘自荐信范文
2014/06/26 职场文书
4S店收银员岗位职责
2015/04/07 职场文书
教学督导岗位职责
2015/04/10 职场文书
2015小学新教师个人工作总结
2015/10/14 职场文书
在Windows下安装配置CPU版的PyTorch的方法
2021/04/02 Python