关于python中数组的问题,序列格式转换
https://blog.csdn.net/sinat_34474705/article/details/74458605?utm_source=blogxgwz1
https://www.cnblogs.com/ArsenalfanInECNU/p/4793354.html
https://blog.csdn.net/zxyhhjs2017/article/details/80157930
https://blog.csdn.net/sinat_27693393/article/details/73195570
https://vimsky.com/article/3717.html
二维数组的创建。
二维数组本身只是数学上的一个概念,我们要把数学中的东西,写进程序中
可以有多种表示数组的方式,
一种是利用np的库
一种是python本身的双层列表
(这两种格式只是支持的索引方式不相同。,,用np创建的array支持的更多些。)
1、
import numpy as np
c = np.array([[1.0,2.0],[3.0,4.0]])
print(c)
>>>[[1. 2.]
[3. 4.]]
print(c[:,[1]]) #这个是输出所有行的第一列
>>> import numpy
>>> a = numpy.zeros(shape=(5,2))
>>> a
array([[ 0., 0.],
[ 0., 0.],
[ 0., 0.],
[ 0., 0.],
[ 0., 0.]])
>>> a[0] = [1,2]
>>> a[1] = [2,3]
>>> a
array([[ 1., 2.],
[ 2., 3.],
[ 0., 0.],
[ 0., 0.],
[ 0., 0.]])
2、
pop=[[1,0,0,0],[0,1,1,1],[0,0,0,0]]
print(pop) #这个用双层序列构成的二维数组,是没有办法完成上面的np输出一列的,
#目前我知道的只有用循环
>>>[[1, 0, 0, 0], [0, 1, 1, 1], [0, 0, 0, 0]]
关于两种格式的互换,
叫做list和array的互换,
显然array支持的搜寻元素方式跟多一些。
import numpy as np
u = np.array([[1,2],[3,4]])
print("u array:",u)
m = u.tolist() #u array转换为list m
print("m list:",m)
k = np.array(m) #list m 再转换回array k
print("k array:",k)
>>>u array: [[1 2]
[3 4]]
>>>m list: [[1, 2], [3, 4]]
>>>k array: [[1 2]
[3 4]]
二维数组创建后赋值的问题
创建一个多行多列的数组如 56行,247列
##创建噪声序列
#mat=np.ones((56,247)) #注意这里传进去的要是元组这里是mat的类型,namestr是名字文件中有几个名字,也就是mat有几行。
#print(mat.shape[0])
#print(mat.shape[1])
#for i in range(mat.shape[0]):
# for k in range(mat.shape[1]):
# mat[i][k]=mat[i][k]*10+random.random() #后面是添加一个随机数。产生一个有噪声的序列。
#print(mat)
双层列表的切片
pop=[[1,0,0,0],[0,1,1,1],[0,0,0,0]]
print(pop)
print(pop[:2])
print(pop[2:])
>>>[[1, 0, 0, 0], [0, 1, 1, 1], [0, 0, 0, 0]]
>>>[[1, 0, 0, 0], [0, 1, 1, 1]] #这个是切片后的
>>>[[0, 0, 0, 0]] #切片的另一部分
二维数组,如何去除某一行或者某一列
1.numpy.delete(arr,obj,axis=None)
arr:输入向量
obj:表明哪一个子向量应该被移除。可以为整数或一个int型的向量
axis:表明删除哪个轴的子向量,若默认,则返回一个被拉平的向量
- a = np.array(np.arange(12).reshape(3,4))
- a
- Out[301]:
- array([[ 0, 1, 2, 3],
- [ 4, 5, 6, 7],
- [ 8, 9, 10, 11]])
- np.delete(a,1,0)
- Out[302]:
- array([[ 0, 1, 2, 3],
- [ 8, 9, 10, 11]])
- np.delete(a,1,1)
- Out[303]:
- array([[ 0, 2, 3],
- [ 4, 6, 7],
- [ 8, 10, 11]])
- np.delete(a,[0,1],1)
- Out[304]:
- array([[ 2, 3],
- [ 6, 7],
- [10, 11]])
- np.delete(a,np.s_[::2],1)
- Out[306]:
- array([[ 1, 3],
- [ 5, 7],
- [ 9, 11]])示例:
1.删除一列
>>> dataset=[[1,2,3],[2,3,4],[4,5,6]]
>>> import numpy as np
>>> dataset = np.delete(dataset, -1, axis=1)
>>> dataset
array([[1, 2],
[2, 3],
[4, 5]])2.删除多列
arr = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]])
np.delete(arr, [1,2], axis=1)
array([[ 1, 4],
[ 5, 8],
[ 9, 12]])
数组中格式的问题
https://blog.csdn.net/wld914674505/article/details/80460042
- z = np.array([[1, 2, 3, 4],
- [5, 6, 7, 8],
- [9, 10, 11, 12],
- [13, 14, 15, 16]])
- z.shape
- (4, 4) #这里的z创建出来是 4行4列但我们只想要一列的话:
- z.reshape(-1,1)
- array([[ 1],
- [ 2],
- [ 3],
- [ 4],
- [ 5],
- [ 6],
- [ 7],
- [ 8],
- [ 9],
- [10],
- [11],
- [12],
- [13],
- [14],
- [15],
- [16]])
想要变成两列:- z.reshape(-1, 2)
- array([[ 1, 2],
- [ 3, 4],
- [ 5, 6],
- [ 7, 8],
- [ 9, 10],
- [11, 12],
- [13, 14],
- [15, 16]])
python序列中每个元素加1的简单写法:n=[i+1 for i in range(1,10)]>>>[2,3,4,5,6,7,8,9,10]对应元素相加行相加、列相加:import numpy as np
a = [1,2,3]
b = [2,3,4]
c = [3,4,5]
print(np.sum([a,b,c], axis = 0)) #输出是[6 9 12]print(np.sum([a,b],axis=1)) #输出是[6 9]
还有一个Python数组行和列返回结果:hang,lie=a.shape()#上面的语句是错误的,报错如下:
TypeError: 'tuple' object is not callable应该吧()去掉如:hang,lie=a.shape,这样才是正确的写法。
关于python中数组的问题,序列格式转换的更多相关文章
- python中的时间和时间格式转换
1.python中的时间:要得到年月日时分秒的时间: import time #time.struct_time(tm_year=2012, tm_mon=9, tm_mday=15, tm_hour ...
- python中unicode, hex, bin之间的转换
python中unicode, hex, bin之间的转换 背景 在smb中有个feature change notify, 需要改动文件权限dacl,然后确认是否有收到notify.一直得不到这个d ...
- Python中对两种utf-8格式的理解
1.python文件开头utf-8格式的理解 2.程序中读取文件时utf-8格式的理解 aa.py文件代码示例: #!/usr/bin/python # -*- coding:utf-8 -*- fr ...
- REST Adapter实现SAP PI中的增强XML/JSON格式转换
SAP标准的REST adapter有着XML/JSON转换的功能,它很有用,因为一方面SAP PI/PO内部以XML格式处理数据,而另一方面,在处理REST架构风格的时候,JSON才是事实上的格式. ...
- Python中字符串/字典/json之间的转换
import json #定义一个字典d1,字典是无序的 d1 = { "a": None, "b": False, "c": True, ...
- REST Adapter实现SAP PI中的增强XML/JSON格式转换(转载)
SAP标准的REST adapter有着XML/JSON转换的功能,它很有用,因为一方面SAP PI/PO内部以XML格式处理数据,而另一方面,在处理REST架构风格的时候,JSON才是事实上的格式. ...
- Python中数字之间的进制转换
Python中的数据转换 在python中可以通过内置方法进行相应的进制转换,但需记得转化成非十进制时,都会将数字转化成字符串 转化成二进制 a = 10 #声明数字,默认十进制 b = bin(a) ...
- 在SQL Server中 获取日期、日期格式转换
--常用日期转换参数: PRINT CONVERT(varchar, getdate(), 120 ) 2016-07-20 16:09:01 PRINT replace(replace(replac ...
- python中数组与多维数组用法介绍
增加时a.append( 'a ')就可以了.只要按顺序加,就没有问题 . 使用时,完全可以使用下标: 代码如下 复制代码 a[0] a[1] 但出果引用不存在的下标,则会引发异常.这时,你需要先添加 ...
随机推荐
- 我比xx强在哪里?弱在哪里?
向下管理? 向上管理? 自我形象? 人机关系运作? 弱项不在管理方面: 在向上的人际关系处理和机会把握方面.
- Windows环境下VMware虚拟机的自启动与自动关机--命令行操作
.设置开机免密登录系统 1. 按下Windows + R 组合键,输入“netplwiz”,点击回车. 2. 去除需要密码登录的勾. 3. 如果需要密码,输入密码,点击确认. 二.编辑vmware ...
- 添加 validate 验证规则
上篇文章链接:http://blog.csdn.net/chenmoimg_/article/details/71191476 修改 msg.js $.extend($.validator.messa ...
- MVC异常过滤器
MVC过滤器 一般的过滤器执行顺序 IAuthorizationFilter->OnAuthorization(授权) IActionFilter ->OnActionE ...
- Android 第三方分享中遇到的问题以及解决方案
本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 第三方登录和分享过程中难免遇到各种纠结的问题,下面将我遇到的分享给大家. 先说第三方登录 1.首先要 ...
- iOS 开发之IPad的设计与实现
// // main.m // 6-ipad // #import <Foundation/Foundation.h> #import "Ipad.h" int mai ...
- vim 基础学习之替换
替换命令substitute可以用来查找跟替换操作. :[range]s[ubstitute]/{pattern}/{string}/[flags] [count] range-命令作用范围(缺省的情 ...
- BZOJ3336: Uva10572 Black and White(插头Dp)
解题思路: 分类讨论即可. 代码(懒得删Debug了): #include<map> #include<cstdio> #include<vector> #incl ...
- Spring模块作用
0.模块整理 Spring模块整理(http://www.kuqin.com/shuoit/20150805/347434.html) 模块名 作用 资料 aop spring的面向切面编程,提供A ...
- 【Uva 12093】Protecting Zonk
[Link]: [Description] n个节点的树; 每个节点都可以选择3种 1.覆盖和它相连的边; c1花费; 2.覆盖和它相连的边以及和它相连的点相连的边; c2花费; 3.不进行操作 覆盖 ...