逍遥友 2018-04-03
1、二维数组取值
注:不管是二维数组,还是一维数组,数组里的数据类型要一模一样,即若是数值型,全为数值型
#二维数组 import numpy as np list1=[[1.73,1.68,1.71,1.89,1.78], [54.4,59.2,63.6,88.4,68.7]] list3=[1.73,1.68,1.71,1.89,1.78] list4=[54.4,59.2,63.6,88.4,68.7] list5=np.array([1.73,1.68,1.71,1.89,1.78]) list6=np.array([54.4,59.2,63.6,88.4,68.7]) #构造二维数组 list=np.array([[1.73,1.68,1.71,1.89,1.78], [54.4,59.2,63.6,88.4,68.7]]) print type(list1) #两个list直接相运算是会报错的,如果想得到list3中的每个数据除以list4中相对应的数据值,则要引入nump中的array函数 # print list3/list4 #下面的可以实现list5/list6 print list5/list6 print type(list) #结果:<type 'numpy.ndarray'> print list.shape #结果:(2, 5) 二行5列二维数组 print list[0][2] #结果:1.71 ,取第0行第二列数值,即第三列1.71 print list[0,2] #结果:1.71 ,取第0行第二列数值,即第三列1.71 print list[:,1:3] #结果:[[ 1.68 1.71] [ 59.2 63.6 ]],取所有行的,第一列和第三列数据 print list[1,:] #结果:[ 54.4 59.2 63.6 88.4 68.7],取第一行的所有数值
2、 画图
(1)线图
import matplotlib.pyplot as plt year=[1950,1970,1990,2010] pop=[2.518,3.68,5.23,6.97] # 1.线图 #调用plt。plot来画图,横轴纵轴两个参数即可 plt.plot(year,pop) # python要用show展现出来图 plt.show()
(2)散点图
import matplotlib.pyplot as plt year=[1950,1970,1990,2010] pop=[2.518,3.68,5.23,6.97] #2.散点图,只是用用scat函数来调用即可 plt.scatter(year,pop) plt.show()
(3)直方图
import matplotlib.pyplot as plt #3.直方图 # 用hist(x,bins=10)函数来画,参数中x是个List,构建直方图的数集,bins是算出数据的边界及每个bin中有多少个数据点 values=[0,0.6,1.4,1.6,2.2,2.5,2.6,3.2,3.5,3.9,4.2,6] #有12个数据,bins=3将其分为3段,即(0,2),(2,4),(4,6),从直方图中可以看出(2,4)中的数据最多 plt.hist(values,bins=3) plt.show()