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中操作字符串之rstrip()方法的使用
May 19 Python
Python数据结构与算法之完全树与最小堆实例
Dec 13 Python
利用Python暴力破解zip文件口令的方法详解
Dec 21 Python
django认证系统实现自定义权限管理的方法
Jul 16 Python
Python画图实现同一结点多个柱状图的示例
Jul 07 Python
python Django里CSRF 对应策略详解
Aug 05 Python
Python-openCV读RGB通道图实例
Jan 17 Python
pytorch实现Tensor变量之间的转换
Feb 17 Python
Jupyter notebook无法导入第三方模块的解决方式
Apr 15 Python
Linux安装Python3如何和系统自带的Python2并存
Jul 23 Python
公认8个效率最高的爬虫框架
Jul 28 Python
详解Python中@staticmethod和@classmethod区别及使用示例代码
Dec 14 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中通过ADODB库实现调用Access数据库之修正版本
2006/12/31 PHP
php调用mysql存储过程
2007/02/14 PHP
动态控制Table的js代码
2007/03/07 Javascript
关于javascript中的parseInt使用技巧
2009/09/03 Javascript
javascript Array.sort() 跨浏览器下需要考虑的问题
2009/12/07 Javascript
jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)
2010/10/20 Javascript
JS date对象的减法处理实现代码
2010/12/28 Javascript
iframe子页面与父页面在同域或不同域下的js通信
2014/05/07 Javascript
jQuery中;function($,undefined) 前面的分号的用处
2014/12/17 Javascript
JavaScript按值删除数组元素的方法
2015/04/24 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
2016/01/14 Javascript
jQuery取得iframe中元素的常用方法详解
2016/01/14 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
2017/05/03 Javascript
前端跨域的几种解决方式总结(推荐)
2017/08/16 Javascript
用vue构建多页面应用的示例代码
2017/09/20 Javascript
JS设计模式之状态模式概念与用法分析
2018/02/05 Javascript
ajax与jsonp的区别及用法
2018/10/16 Javascript
vsCode安装使用教程和插件安装方法
2020/08/24 Javascript
微信小程序动态添加和删除组件的现实
2020/02/28 Javascript
python制作企业邮箱的爆破脚本
2016/10/05 Python
Python 模拟员工信息数据库操作的实例
2017/10/23 Python
Pandas将列表(List)转换为数据框(Dataframe)
2020/04/24 Python
HTML5使用ApplicationCache接口实现离线缓存技术解决离线难题
2012/12/13 HTML / CSS
让IE下支持Html5的placeholder属性的插件
2014/09/02 HTML / CSS
MyFrenchPharma中文网:最大的法国药妆平台
2016/10/07 全球购物
goodhealth官方海外旗舰店:新西兰国民营养师
2017/12/15 全球购物
意大利值得信赖的在线超级药房:PillolaStore
2020/02/05 全球购物
Shell如何接收变量输入
2012/09/24 面试题
化工专业应届生求职信
2013/11/08 职场文书
房产销售经理职责
2013/12/20 职场文书
土建施工员岗位职责
2014/07/16 职场文书
房屋租赁协议书(标准版)
2014/10/02 职场文书
浅谈如何提高PHP代码质量之单元测试
2021/05/28 PHP
关于python爬虫应用urllib库作用分析
2021/09/04 Python
python神经网络ResNet50模型
2022/05/06 Python